Minor Update:

- Pass printf Mask for Int/Float values on Get/Set methods
  - On GetValue use mask for default value
- Add SetArray() method
- Bug fix: Incorrect malloc size in SetValue()
- Bug fix: Len not calculated if -1 passed to SetValue()
- Set default value for Len = -1 on SetValue() methods
- Don't pass Len to SetValue() unless required
This commit is contained in:
Charl Wentzel
2017-03-27 04:29:11 +02:00
parent a22f60b152
commit 5691b22df9
3 changed files with 68 additions and 30 deletions

View File

@@ -257,7 +257,7 @@ bool CJSONparse::ParseObject( TDataMember * Object )
// Set Type
Level++;
DataTree->SetValue( Object, jtObject, NULL, -1 );
DataTree->SetValue( Object, jtObject );
while (true)
{
@@ -340,7 +340,7 @@ bool CJSONparse::ParseArray( TDataMember * Array )
// Set Type
Level++;
DataTree->SetValue( Array, jtArray, NULL, -1 );
DataTree->SetValue( Array, jtArray );
while (true)
{
@@ -438,10 +438,10 @@ bool CJSONparse::ParsePrimitive( TDataMember * Member )
DataTree->SetValuePtr( Member, jtNull, NULL, -1 );
}
else if ((Len == 4) && !strncasecmp( Mark, "true", 4 )) {
DataTree->SetValue( Member, jtBool, "1", 1 );
DataTree->SetValue( Member, jtBool, "1" );
}
else if ((Len == 5) && !strncasecmp( Mark, "false", 5 )) {
DataTree->SetValue( Member, jtBool, "0", 1 );
DataTree->SetValue( Member, jtBool, "0" );
}
else {
// Try conversion to int