hex.c: reduce memory footprint of sha1_to_hex static buffers

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>
This commit is contained in:
Stefan Beller 2015-02-13 13:18:49 -08:00 коммит произвёл Junio C Hamano
Родитель a5031214c4
Коммит 0b868f0eec
1 изменённых файлов: 1 добавлений и 1 удалений

2
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;