diff options
author | Vicent Marti <vicent@github.com> | 2014-07-16 14:21:53 -0700 |
---|---|---|
committer | Vicent Marti <vicent@github.com> | 2014-07-16 14:21:53 -0700 |
commit | 091165c53b2bcd5d41fb71d43ed5a23a3d96bf5d (patch) | |
tree | c270dbcd5386cc767eecdf09a42e9099ca04b7ea | |
parent | ec813d83e757df2c4c8d7984e9ac993e7518fad6 (diff) | |
parent | b3af2d80d2d6393dada89c713baff9b3eba49a01 (diff) | |
download | libgit2-091165c53b2bcd5d41fb71d43ed5a23a3d96bf5d.tar.gz |
Merge pull request #2475 from libgit2/expose-buffer-binary-detection
Export git_buf_text_is_binary and git_buf_text_contains_nul.
-rw-r--r-- | include/git2/buffer.h | 16 | ||||
-rw-r--r-- | src/buffer.c | 11 |
2 files changed, 27 insertions, 0 deletions
diff --git a/include/git2/buffer.h b/include/git2/buffer.h index 36a61e6c9..1c216bf3a 100644 --- a/include/git2/buffer.h +++ b/include/git2/buffer.h @@ -105,6 +105,22 @@ GIT_EXTERN(int) git_buf_grow(git_buf *buffer, size_t target_size); GIT_EXTERN(int) git_buf_set( git_buf *buffer, const void *data, size_t datalen); +/** +* Check quickly if buffer looks like it contains binary data +* +* @param buf Buffer to check +* @return 1 if buffer looks like non-text data +*/ +GIT_EXTERN(int) git_buf_is_binary(const git_buf *buf); + +/** +* Check quickly if buffer contains a NUL byte +* +* @param buf Buffer to check +* @return 1 if buffer contains a NUL byte +*/ +GIT_EXTERN(int) git_buf_contains_nul(const git_buf *buf); + GIT_END_DECL /** @} */ diff --git a/src/buffer.c b/src/buffer.c index b8f8660ed..1bee9d70b 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -7,6 +7,7 @@ #include "buffer.h" #include "posix.h" #include "git2/buffer.h" +#include "buf_text.h" #include <ctype.h> /* Used as default value for git_buf->ptr so that people can always @@ -141,6 +142,16 @@ int git_buf_set(git_buf *buf, const void *data, size_t len) return 0; } +int git_buf_is_binary(const git_buf *buf) +{ + return git_buf_text_is_binary(buf); +} + +int git_buf_contains_nul(const git_buf *buf) +{ + return git_buf_text_contains_nul(buf); +} + int git_buf_sets(git_buf *buf, const char *string) { return git_buf_set(buf, string, string ? strlen(string) : 0); |