diff --git a/main/spprintf.c b/main/spprintf.c index 27ef5557d9c..3767d9cf668 100644 --- a/main/spprintf.c +++ b/main/spprintf.c @@ -337,6 +337,16 @@ static void xbuf_format_converter(int unicode, smart_str *xbuf, const char *fmt, fmt++; modifier = LM_LONG_DOUBLE; break; + case 'I': + fmt++; +#if SIZEOF_LONG_LONG + if (*fmt == '6' && *(fmt+1) == '4') { + fmt += 2; + modifier = LM_LONG_LONG; + } else +#endif + modifier = LM_LONG; + break; case 'l': fmt++; #if SIZEOF_LONG_LONG