diff options
author | Edward Thomson <ethomson@microsoft.com> | 2015-02-11 14:52:08 -0500 |
---|---|---|
committer | Edward Thomson <ethomson@edwardthomson.com> | 2015-02-12 22:54:47 -0500 |
commit | 190b76a69875da49973d1a5d8fd3b96c0cd43425 (patch) | |
tree | 4d222031bd0f538d5119698d1e184a71daf78f98 /src/pack-objects.c | |
parent | 8d534b475829edf87c8126fc4ae30f593172f317 (diff) | |
download | libgit2-190b76a69875da49973d1a5d8fd3b96c0cd43425.tar.gz |
Introduce git__add_sizet_overflow and friends
Add some helper functions to check for overflow in a type-specific
manner.
Diffstat (limited to 'src/pack-objects.c')
-rw-r--r-- | src/pack-objects.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/pack-objects.c b/src/pack-objects.c index 9b56234b5..8236ef9f3 100644 --- a/src/pack-objects.c +++ b/src/pack-objects.c @@ -833,8 +833,8 @@ static int try_delta(git_packbuilder *pb, struct unpacked *trg, trg_object->delta_data = NULL; } if (delta_cacheable(pb, src_size, trg_size, delta_size)) { - GITERR_CHECK_ALLOC_ADD(pb->delta_cache_size, delta_size); - pb->delta_cache_size += delta_size; + if (!git__add_uint64_overflow(&pb->delta_cache_size, pb->delta_cache_size, delta_size)) + return -1; git_packbuilder__cache_unlock(pb); |