Skip to content

Commit

Permalink
Modified XXXULongLong & XXXLongLong behavior
Browse files Browse the repository at this point in the history
  • Loading branch information
mxmauro committed May 1, 2024
1 parent 5c2fe62 commit dca6608
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 12 deletions.
12 changes: 6 additions & 6 deletions LightJSonBuilder.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -390,10 +390,10 @@ BOOL CLightJSonBuilder::AddObjectLongLong(_In_z_ LPCSTR szNameA, _In_ LONGLONG n
return FALSE;
if (EscapeString(cStrJsonA, szNameA, StrLenA(szNameA), TRUE) == FALSE)
return FALSE;
return cStrJsonA.AppendFormat("\": \"%I64d\"", nValue);
return cStrJsonA.AppendFormat("\": %I64d", nValue);
}

BOOL CLightJSonBuilder::AddObjectULongLong(_In_z_ LPCSTR szNameA, _In_ ULONGLONG nValue, _In_opt_ BOOL bAsHexa)
BOOL CLightJSonBuilder::AddObjectULongLong(_In_z_ LPCSTR szNameA, _In_ ULONGLONG nValue)
{
MX_ASSERT(szNameA != NULL);
MX_ASSERT(*szNameA != 0);
Expand All @@ -416,7 +416,7 @@ BOOL CLightJSonBuilder::AddObjectULongLong(_In_z_ LPCSTR szNameA, _In_ ULONGLONG
return FALSE;
if (EscapeString(cStrJsonA, szNameA, StrLenA(szNameA), TRUE) == FALSE)
return FALSE;
return cStrJsonA.AppendFormat(((bAsHexa == FALSE) ? "\": \"%I64u\"" : "\": \"0x%016I64X\""), nValue);
return cStrJsonA.AppendFormat("\": %I64u", nValue);
}

BOOL CLightJSonBuilder::AddObjectObject(_In_z_ LPCSTR szNameA, _In_ CLightJSonBuilder &cSrc)
Expand Down Expand Up @@ -622,10 +622,10 @@ BOOL CLightJSonBuilder::AddArrayLongLong(_In_ LONGLONG nValue)
}

//insert text
return cStrJsonA.AppendFormat("\"%I64d\"", nValue);
return cStrJsonA.AppendFormat("%I64d", nValue);
}

BOOL CLightJSonBuilder::AddArrayULongLong(_In_ ULONGLONG nValue, _In_opt_ BOOL bAsHexa)
BOOL CLightJSonBuilder::AddArrayULongLong(_In_ ULONGLONG nValue)
{
MX_ASSERT(aNestedTypes.GetCount() > 0);
MX_ASSERT(aNestedTypes.GetElementAt(aNestedTypes.GetCount() - 1) == _IS_ARRAY);
Expand All @@ -642,7 +642,7 @@ BOOL CLightJSonBuilder::AddArrayULongLong(_In_ ULONGLONG nValue, _In_opt_ BOOL b
}

//insert text
return cStrJsonA.AppendFormat((bAsHexa == FALSE) ? "\"%I64u\"" : "\"0x%016I64X\"", nValue);
return cStrJsonA.AppendFormat("%I64u", nValue);
}

BOOL CLightJSonBuilder::AddArrayObject(_In_ CLightJSonBuilder &cSrc)
Expand Down
12 changes: 6 additions & 6 deletions LightJSonBuilder.h
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,10 @@ class CLightJSonBuilder : public CBaseMemObj, public CNonCopyableObj
BOOL AddObjectString(_In_z_ LPCSTR szNameA, _In_ PUNICODE_STRING Value);
BOOL AddObjectLong(_In_z_ LPCSTR szNameA, _In_ LONG nValue);
BOOL AddObjectULong(_In_z_ LPCSTR szNameA, _In_ ULONG nValue, _In_opt_ BOOL bAsHexa = FALSE);
//IMPORTANT: Stored as strings because ECMA-262 Sec 8.5 states max number is 9007199254740990
//IMPORTANT: ECMA-262 Sec 8.5 states max number is 9007199254740990 so, if larger, it is recommended to store it as string
// to maximize compatibility, mainly, with javascript.
BOOL AddObjectLongLong(_In_z_ LPCSTR szNameA, _In_ LONGLONG nValue);
//IMPORTANT: Stored as strings because ECMA-262 Sec 8.5 states max number is 9007199254740990
BOOL AddObjectULongLong(_In_z_ LPCSTR szNameA, _In_ ULONGLONG nValue, _In_opt_ BOOL bAsHexa = FALSE);
BOOL AddObjectULongLong(_In_z_ LPCSTR szNameA, _In_ ULONGLONG nValue);
BOOL AddObjectObject(_In_z_ LPCSTR szNameA, _In_ CLightJSonBuilder &cSrc);

BOOL AddArrayBoolean(_In_ BOOL bValue);
Expand All @@ -64,10 +64,10 @@ class CLightJSonBuilder : public CBaseMemObj, public CNonCopyableObj
BOOL AddArrayFormattedString(_Printf_format_string_ LPCWSTR szFormatW, ...);
BOOL AddArrayLong(_In_ LONG nValue);
BOOL AddArrayULong(_In_ ULONG nValue, _In_opt_ BOOL bAsHexa = FALSE);
//IMPORTANT: Stored as strings because ECMA-262 Sec 8.5 states max number is 9007199254740990
//IMPORTANT: ECMA-262 Sec 8.5 states max number is 9007199254740990 so, if larger, it is recommended to store it as string
// to maximize compatibility, mainly, with javascript.
BOOL AddArrayLongLong(_In_ LONGLONG nValue);
//IMPORTANT: Stored as strings because ECMA-262 Sec 8.5 states max number is 9007199254740990
BOOL AddArrayULongLong(_In_ ULONGLONG nValue, _In_opt_ BOOL bAsHexa = FALSE);
BOOL AddArrayULongLong(_In_ ULONGLONG nValue);
BOOL AddArrayObject(_In_ CLightJSonBuilder &cSrc);

BOOL AddRaw(_In_ LPCSTR szStrA, _In_opt_ SIZE_T nStrLen = (SIZE_T)-1);
Expand Down

0 comments on commit dca6608

Please sign in to comment.