hex.c: reduce memory footprint of sha1_to_hex static buffers
authorStefan Beller <sbeller@google.com>
Fri, 13 Feb 2015 21:18:49 +0000 (13:18 -0800)
committerJunio C Hamano <gitster@pobox.com>
Fri, 13 Feb 2015 21:42:17 +0000 (13:42 -0800)
41 bytes is the exact number of bytes needed for having the returned
hex string represented. 50 seems to be an arbitrary number, such
that there are no benefits from alignment to certain address boundaries.

Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
hex.c

diff --git a/hex.c b/hex.c
index bb402fb..9ec5a3b 100644 (file)
--- a/hex.c
+++ b/hex.c
@@ -51,7 +51,7 @@ int get_sha1_hex(const char *hex, unsigned char *sha1)
 char *sha1_to_hex(const unsigned char *sha1)
 {
        static int bufno;
-       static char hexbuffer[4][50];
+       static char hexbuffer[4][41];
        static const char hex[] = "0123456789abcdef";
        char *buffer = hexbuffer[3 & ++bufno], *buf = buffer;
        int i;