Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/libgit2.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@microsoft.com>2015-02-11 22:52:08 +0300
committerEdward Thomson <ethomson@edwardthomson.com>2015-02-13 06:54:47 +0300
commit190b76a69875da49973d1a5d8fd3b96c0cd43425 (patch)
tree4d222031bd0f538d5119698d1e184a71daf78f98 /src/pack-objects.c
parent8d534b475829edf87c8126fc4ae30f593172f317 (diff)
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.c4
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);