Small snprintf.cpp update.
This commit is contained in:
+7
-5
@@ -642,6 +642,8 @@ static size_t dopr(char *buffer, size_t maxsize, const char *format, va_list arg
|
|||||||
fmtint(buffer, &currsize, maxsize, value, 16, min, max, flags);
|
fmtint(buffer, &currsize, maxsize, value, 16, min, max, flags);
|
||||||
break;
|
break;
|
||||||
#if !(NO_FLOAT)
|
#if !(NO_FLOAT)
|
||||||
|
case 'F':
|
||||||
|
flags |= DP_F_UP;
|
||||||
case 'f':
|
case 'f':
|
||||||
if (cflags == DP_C_LDOUBLE)
|
if (cflags == DP_C_LDOUBLE)
|
||||||
fvalue = va_arg(args, LDOUBLE);
|
fvalue = va_arg(args, LDOUBLE);
|
||||||
@@ -667,11 +669,14 @@ static size_t dopr(char *buffer, size_t maxsize, const char *format, va_list arg
|
|||||||
fvalue = va_arg(args, double);
|
fvalue = va_arg(args, double);
|
||||||
break;
|
break;
|
||||||
#else
|
#else
|
||||||
|
case 'F':
|
||||||
case 'f':
|
case 'f':
|
||||||
case 'E':
|
case 'E':
|
||||||
case 'e':
|
case 'e':
|
||||||
case 'G':
|
case 'G':
|
||||||
case 'g':
|
case 'g':
|
||||||
|
case 'A':
|
||||||
|
case 'a':
|
||||||
assert(0);
|
assert(0);
|
||||||
exit(255);
|
exit(255);
|
||||||
#endif /* !(NO_FLOAT) */
|
#endif /* !(NO_FLOAT) */
|
||||||
@@ -715,10 +720,6 @@ static size_t dopr(char *buffer, size_t maxsize, const char *format, va_list arg
|
|||||||
case '%':
|
case '%':
|
||||||
dopr_outch(buffer, &currsize, maxsize, ch);
|
dopr_outch(buffer, &currsize, maxsize, ch);
|
||||||
break;
|
break;
|
||||||
case 'w':
|
|
||||||
/* not supported yet, treat as next char */
|
|
||||||
ch = *format++;
|
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
/* Unknown, skip */
|
/* Unknown, skip */
|
||||||
break;
|
break;
|
||||||
@@ -791,7 +792,8 @@ int upx_vasprintf(char **ptr, const char *format, va_list ap) {
|
|||||||
assert(*ptr != NULL);
|
assert(*ptr != NULL);
|
||||||
if (*ptr == NULL)
|
if (*ptr == NULL)
|
||||||
return -1;
|
return -1;
|
||||||
len = upx_vsnprintf(*ptr, len + 1, format, ap);
|
int len2 = upx_vsnprintf(*ptr, len + 1, format, ap);
|
||||||
|
assert(len2 == len);
|
||||||
}
|
}
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user