]> git.proxmox.com Git - libgit2.git/commitdiff
buffer: add git_buf_consume
authorCarlos Martín Nieto <carlos@cmartin.tk>
Mon, 5 Sep 2011 19:38:56 +0000 (21:38 +0200)
committerCarlos Martín Nieto <carlos@cmartin.tk>
Fri, 9 Sep 2011 11:12:11 +0000 (13:12 +0200)
Moves the content after 'end' to the beginning of the buffer

Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
src/buffer.c
src/buffer.h

index 3cdc62f6d9bdabf339cbf93b73337753e5ec9a77..e92b2ef9ed6d8ddd0f98a14c18fd4f004d400612 100644 (file)
@@ -98,3 +98,10 @@ void git_buf_clear(git_buf *buf)
 {
        buf->size = 0;
 }
+
+void git_buf_consume(git_buf *buf, const char *end)
+{
+       size_t consumed = end - buf->ptr;
+       memmove(buf->ptr, end, buf->size - consumed);
+       buf->size -= consumed;
+}
index 02266f51eba1d040836db02c841f398a90bbff53..c394e255382023e5c7dbc6f04b89195c7702cb2c 100644 (file)
@@ -19,6 +19,7 @@ void git_buf_printf(git_buf *buf, const char *format, ...) GIT_FORMAT_PRINTF(2,
 const char *git_buf_cstr(git_buf *buf);
 void git_buf_free(git_buf *buf);
 void git_buf_clear(git_buf *buf);
+void git_buf_consume(git_buf *buf, const char *end);
 
 #define git_buf_PUTS(buf, str) git_buf_put(buf, str, sizeof(str) - 1)