diff options
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/printf.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/cmd/printf.c b/cmd/printf.c index e0246767431..0c6887e0d6e 100644 --- a/cmd/printf.c +++ b/cmd/printf.c @@ -144,10 +144,10 @@ static void printf_str(struct print_inf *inf, char *format, ...) i = vsnprintf(inf->str + inf->offset, remaining, format, args); va_end(args); - if (i >= remaining) - inf->error |= PRINT_TRUNCATED_ERROR; - else if (i < 0) + if (i < 0) inf->error |= PRINT_CONVERSION_ERROR; + else if ((unsigned int)i >= remaining) + inf->error |= PRINT_TRUNCATED_ERROR; else inf->offset += i; } |