Fix ALLOC_GROW off-by-one
authorJeff King <peff@peff.net>
Sat, 16 Jun 2007 22:37:39 +0000 (18:37 -0400)
committerJunio C Hamano <gitster@pobox.com>
Sun, 17 Jun 2007 00:55:44 +0000 (17:55 -0700)
commitc927e6c69b50877e116340671ed35aaf6d3a8f49
treec88223f32daf48d3a04ae50aaf9f9495ec8de6f9
parent4234a76167b12a7669dae0e6386c62e712b9dcf5
Fix ALLOC_GROW off-by-one

The ALLOC_GROW macro will never let us fill the array completely,
instead allocating an extra chunk if that would be the case. This is
because the 'nr' argument was originally treated as "how much we do have
now" instead of "how much do we want". The latter makes much more
sense because you can grow by more than one item.

This off-by-one never resulted in an error because it meant we were
overly conservative about when to allocate. Any callers which passed
"how much we have now" need to be updated, or they will fail to allocate
enough.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
cache.h