# [PATCH 1/2] clean up the delta base cache size a bit

1 messages from 2007-03-19 to 2007-03-19. Participants: Nicolas Pitre.
Thread: https://gitlist.dev/t/7317

## Nicolas Pitre, 2007-03-19 20:28

Subject: [PATCH 1/2] clean up the delta base cache size a bit
Message-ID: <alpine.LFD.0.83.0703191625090.18328@xanadu.home>
URL: https://gitlist.dev/e/alpine.LFD.0.83.0703191625090.18328%40xanadu.home

```
Currently there are 3 different ways to deal with the cache size.
Let's stick to only one.  The compiler is smart enough to produce the exact
same code in those cases anyway.

Signed-off-by: Nicolas Pitre <nico@cam.org>
---
 sha1_file.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/sha1_file.c b/sha1_file.c
index b0b2177..8a19d7e 100644
--- a/sha1_file.c
+++ b/sha1_file.c
@@ -1369,7 +1369,7 @@ static unsigned long pack_entry_hash(struct packed_git *p, off_t base_offset)
 
 	hash = (unsigned long)p + (unsigned long)base_offset;
 	hash += (hash >> 8) + (hash >> 16);
-	return hash & 0xff;
+	return hash % MAX_DELTA_CACHE;
 }
 
 static void *cache_or_unpack_entry(struct packed_git *p, off_t base_offset,
@@ -1417,13 +1417,13 @@ static void add_delta_base_cache(struct packed_git *p, off_t base_offset,
 	release_delta_base_cache(ent);
 	delta_base_cached += base_size;
 	for (i = 0; delta_base_cached > delta_base_cache_limit
-		&& i < ARRAY_SIZE(delta_base_cache); i++) {
+		    && i < MAX_DELTA_CACHE ; i++) {
 		struct delta_base_cache_entry *f = delta_base_cache + i;
 		if (f->type == OBJ_BLOB)
 			release_delta_base_cache(f);
 	}
 	for (i = 0; delta_base_cached > delta_base_cache_limit
-		&& i < ARRAY_SIZE(delta_base_cache); i++)
+		    && i < MAX_DELTA_CACHE ; i++)
 		release_delta_base_cache(delta_base_cache + i);
 
 	ent->p = p;
-- 
1.5.1.rc1.596.ge11e-dirty

```
