diff options
Diffstat (limited to 'third_party/git/compat/sha1-chunked.c')
-rw-r--r-- | third_party/git/compat/sha1-chunked.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/third_party/git/compat/sha1-chunked.c b/third_party/git/compat/sha1-chunked.c new file mode 100644 index 000000000000..6adfcfd54051 --- /dev/null +++ b/third_party/git/compat/sha1-chunked.c @@ -0,0 +1,19 @@ +#include "cache.h" + +int git_SHA1_Update_Chunked(platform_SHA_CTX *c, const void *data, size_t len) +{ + size_t nr; + size_t total = 0; + const char *cdata = (const char*)data; + + while (len) { + nr = len; + if (nr > SHA1_MAX_BLOCK_SIZE) + nr = SHA1_MAX_BLOCK_SIZE; + platform_SHA1_Update(c, cdata, nr); + total += nr; + cdata += nr; + len -= nr; + } + return total; +} |