X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=device%2Flib%2Fpic16%2Flibc%2Fstdio%2Fvfprintf.c;h=304bb01b03d522e5f5db7a9b94fe0f24a855138e;hb=24a948a79cc9a76ee83dc2d90b6f5a3604fa617d;hp=95d8b002a4b7045614bb3a346d7df5328595574f;hpb=9f5ca28d648aba61200519f5fa855700a48ccc6f;p=fw%2Fsdcc diff --git a/device/lib/pic16/libc/stdio/vfprintf.c b/device/lib/pic16/libc/stdio/vfprintf.c index 95d8b002..304bb01b 100644 --- a/device/lib/pic16/libc/stdio/vfprintf.c +++ b/device/lib/pic16/libc/stdio/vfprintf.c @@ -122,6 +122,14 @@ */ #define EXTRA_INTEGER +#ifdef BINARY_SPECIFIER +/* "%lb" = "0" - "11111111111111111111111111111111" */ +# define BUF_SIZE 33 +#else +/* "%lo" = "0" - "37777777777" or "-20000000000" - "17777777777" */ +# define BUF_SIZE 13 +#endif + #if _DEBUG extern void io_long (unsigned long); extern void io_str (char *); @@ -156,8 +164,7 @@ vfprintf (FILE * stream, const char *fmt, va_list ap) int count = 0; char *str, *ch; long val; -// static char buffer[16]; - char buffer[16]; + char buffer[BUF_SIZE]; #if _DEBUG io_str ("vfprintf: ");