Commit cdb2c2a0bf9428ea188959f332e9f541a2fb2af1

Patrick Steinhardt 2017-02-13T13:31:37

buffer: clarify how `git_buf_sanitize` handles non-NULL input When `git_buf_sanitize` gets called, it converts a buffer with NULL content to be correctly initialized. This is done by pointing it to `git_buf__initbuf`. While the method's documentation states this clearly, it may also lead to the conclusion that it will do the same to buffers which do _not_ have NULL contents. Clarify behavior when passing a buffer with non-NULL contents, where `git_buf_sanitize` will ensure that the contents are `\0`-terminated.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
diff --git a/src/buffer.h b/src/buffer.h
index cdfca6d..a76b2d7 100644
--- a/src/buffer.h
+++ b/src/buffer.h
@@ -66,7 +66,8 @@ extern int git_buf_try_grow(
  * library, when providing git_buf's, may wish to provide a NULL ptr for
  * ease of handling.  The buffer routines, however, expect a non-NULL ptr
  * always.  This helper method simply handles NULL input, converting to a
- * git_buf__initbuf.
+ * git_buf__initbuf. If a buffer with a non-NULL ptr is passed in, this method
+ * assures that the buffer is '\0'-terminated.
  */
 extern void git_buf_sanitize(git_buf *buf);