diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2019-12-06 18:22:58 +1100 |
---|---|---|
committer | Edward Thomson <ethomson@edwardthomson.com> | 2020-01-24 09:54:29 -0600 |
commit | d68f2b1ab7aa7358f8ff0b75b72054bb9eeced3d (patch) | |
tree | 8ba09c1727c292a72455053508825b0ee8d8c0ac | |
parent | e995f74e8822456f97a2000da5a8d6803b88f643 (diff) | |
download | libgit2-d68f2b1ab7aa7358f8ff0b75b72054bb9eeced3d.tar.gz |
buf: add consume_bytes
Allow users to consume a buffer by the number of bytes, not just to an
ending pointer.
-rw-r--r-- | src/buffer.c | 5 | ||||
-rw-r--r-- | src/buffer.h | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/buffer.c b/src/buffer.c index 61cf9675b..328fdfe7f 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -567,6 +567,11 @@ void git_buf_copy_cstr(char *data, size_t datasize, const git_buf *buf) data[copylen] = '\0'; } +void git_buf_consume_bytes(git_buf *buf, size_t len) +{ + git_buf_consume(buf, buf->ptr + len); +} + void git_buf_consume(git_buf *buf, const char *end) { if (end > buf->ptr && end <= buf->ptr + buf->size) { diff --git a/src/buffer.h b/src/buffer.h index 7910b6338..6b717d2e9 100644 --- a/src/buffer.h +++ b/src/buffer.h @@ -113,6 +113,7 @@ int git_buf_puts(git_buf *buf, const char *string); int git_buf_printf(git_buf *buf, const char *format, ...) GIT_FORMAT_PRINTF(2, 3); int git_buf_vprintf(git_buf *buf, const char *format, va_list ap); void git_buf_clear(git_buf *buf); +void git_buf_consume_bytes(git_buf *buf, size_t len); void git_buf_consume(git_buf *buf, const char *end); void git_buf_truncate(git_buf *buf, size_t len); void git_buf_shorten(git_buf *buf, size_t amount); |