From b3af2d80d2d6393dada89c713baff9b3eba49a01 Mon Sep 17 00:00:00 2001 From: joshaber Date: Wed, 16 Jul 2014 13:34:25 -0700 Subject: [PATCH] Just put it all in buffer. --- include/git2.h | 1 - include/git2/buf_text.h | 42 ----------------------------------------- include/git2/buffer.h | 16 ++++++++++++++++ src/buf_text.c | 4 ++-- src/buf_text.h | 17 ++++++++++++++++- src/buffer.c | 11 +++++++++++ 6 files changed, 45 insertions(+), 46 deletions(-) delete mode 100644 include/git2/buf_text.h diff --git a/include/git2.h b/include/git2.h index 2a2ad93ff92..f7497606124 100644 --- a/include/git2.h +++ b/include/git2.h @@ -13,7 +13,6 @@ #include "git2/blame.h" #include "git2/branch.h" #include "git2/buffer.h" -#include "git2/buf_text.h" #include "git2/checkout.h" #include "git2/cherrypick.h" #include "git2/clone.h" diff --git a/include/git2/buf_text.h b/include/git2/buf_text.h deleted file mode 100644 index 29bfca80d2a..00000000000 --- a/include/git2/buf_text.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (C) the libgit2 contributors. All rights reserved. - * - * This file is part of libgit2, distributed under the GNU GPL v2 with - * a Linking Exception. For full terms see the included COPYING file. - */ -#ifndef INCLUDE_git_buf_text_h__ -#define INCLUDE_git_buf_text_h__ - -#include "common.h" -#include "buffer.h" - -/** - * @file git2/buf_text.h - * @brief Buffer text export structure - * - * @ingroup Git - * @{ - */ -GIT_BEGIN_DECL - -/** - * 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_text_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_text_contains_nul(const git_buf *buf); - -GIT_END_DECL - -/** @} */ - -#endif diff --git a/include/git2/buffer.h b/include/git2/buffer.h index 36a61e6c9e1..1c216bf3a36 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/buf_text.c b/src/buf_text.c index 0e93696cd9e..8d2b141b2ee 100644 --- a/src/buf_text.c +++ b/src/buf_text.c @@ -176,7 +176,7 @@ int git_buf_text_common_prefix(git_buf *buf, const git_strarray *strings) return 0; } -int git_buf_text_is_binary(const git_buf *buf) +bool git_buf_text_is_binary(const git_buf *buf) { const char *scan = buf->ptr, *end = buf->ptr + buf->size; git_bom_t bom; @@ -201,7 +201,7 @@ int git_buf_text_is_binary(const git_buf *buf) return ((printable >> 7) < nonprintable); } -int git_buf_text_contains_nul(const git_buf *buf) +bool git_buf_text_contains_nul(const git_buf *buf) { return (memchr(buf->ptr, '\0', buf->size) != NULL); } diff --git a/src/buf_text.h b/src/buf_text.h index 3415ac00fbf..e753a0244ec 100644 --- a/src/buf_text.h +++ b/src/buf_text.h @@ -7,7 +7,6 @@ #ifndef INCLUDE_buf_text_h__ #define INCLUDE_buf_text_h__ -#include "git2/buf_text.h" #include "buffer.h" typedef enum { @@ -78,6 +77,22 @@ extern int git_buf_text_lf_to_crlf(git_buf *tgt, const git_buf *src); */ extern int git_buf_text_common_prefix(git_buf *buf, const git_strarray *strs); +/** + * Check quickly if buffer looks like it contains binary data + * + * @param buf Buffer to check + * @return true if buffer looks like non-text data + */ +extern bool git_buf_text_is_binary(const git_buf *buf); + +/** + * Check quickly if buffer contains a NUL byte + * + * @param buf Buffer to check + * @return true if buffer contains a NUL byte + */ +extern bool git_buf_text_contains_nul(const git_buf *buf); + /** * Check if a buffer begins with a UTF BOM * diff --git a/src/buffer.c b/src/buffer.c index b8f8660edb1..1bee9d70ba3 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 /* 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);