string: Shrink convert stack buffer
authorJack Miller <jack@codezen.org>
Tue, 2 Aug 2016 16:49:15 +0000 (11:49 -0500)
committerJack Miller <jack@codezen.org>
Tue, 2 Aug 2016 16:49:15 +0000 (11:49 -0500)
Longest decimal representation of 8 bytes is 18446744073709551615, which
is 20 digits long.

kernel/string.c

index 10d193e..54ccf95 100644 (file)
@@ -54,8 +54,7 @@ static int convert(char *buf, char fill, u32 rem, s32 fieldwidth,
                    unsigned long long val, u32 base)
 {
     char conv[] = "0123456789abcdef";
-    /* Largest possible ull in decimal is 39 digits */
-    char tmp[39];
+    char tmp[20];
     int digits = 0;
     int i = 0;