Skip to content

Commit 8eb6f88

Browse files
mloycdunn2001
authored andcommitted
snprintf does return a signed integer
assert if returned value is neagtive
1 parent 64d591b commit 8eb6f88

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/lib_json/json_writer.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,17 +74,19 @@ std::string valueToString(double value) {
7474
#if defined(_MSC_VER) && defined(__STDC_SECURE_LIB__) // Use secure version with
7575
// visual studio 2005 to
7676
// avoid warning.
77-
size_t len;
77+
int len;
7878
#if defined(WINCE)
7979
len = _snprintf(buffer, sizeof(buffer), "%.16g", value);
8080
#else
8181
len = sprintf_s(buffer, sizeof(buffer), "%.16g", value);
8282
#endif
83+
assert(len>=0);
8384
fixNumericLocale(buffer, buffer + len);
8485
#else
8586
if ( isfinite( value ))
8687
{
87-
size_t len = snprintf(buffer, sizeof(buffer), "%.16g", value);
88+
int len = snprintf(buffer, sizeof(buffer), "%.16g", value);
89+
assert(len>=0);
8890
fixNumericLocale(buffer, buffer + len);
8991
}
9092
else

0 commit comments

Comments
 (0)