forked from latticeware/Cytoplasm
parent
bc67393036
commit
29070c8f41
2 changed files with 8 additions and 2 deletions
|
@ -12,6 +12,8 @@ releases. Final change log entries are published as [Releases](releases).
|
|||
- Added an option to `j2s` to allow additional fields in structures and ignore them in
|
||||
encoding and decoding. Note that additional fields are totally untouched—they
|
||||
are not even initialized to a default value.
|
||||
- Fixed a memory leak that would occur in code generated by `j2s` under
|
||||
specific circumstances.
|
||||
- Added `JsonMerge()` to the JSON API to merge two JSON objects together.
|
||||
|
||||
## v0.4.0
|
||||
|
|
|
@ -660,11 +660,15 @@ Main(Array * args)
|
|||
StreamPrintf(implFile, " }\n\n");
|
||||
if (StrEquals(fieldType, "array"))
|
||||
{
|
||||
StreamPrintf(implFile, " out->%s = JsonValueAsArray(JsonValueDuplicate(val));\n", key);
|
||||
StreamPrintf(implFile, " val = JsonValueDuplicate(val);\n");
|
||||
StreamPrintf(implFile, " out->%s = JsonValueAsArray(val);\n", key);
|
||||
StreamPrintf(implFile, " Free(val); /* Not JsonValueFree() because we want the inner value. */\n");
|
||||
}
|
||||
else if (StrEquals(fieldType, "object"))
|
||||
{
|
||||
StreamPrintf(implFile, " out->%s = JsonValueAsObject(JsonValueDuplicate(val));\n", key);
|
||||
StreamPrintf(implFile, " val = JsonValueDuplicate(val);\n");
|
||||
StreamPrintf(implFile, " out->%s = JsonValueAsObject(val);\n", key);
|
||||
StreamPrintf(implFile, " Free(val); /* Not JsonValueFree() because we want the inner value. */\n");
|
||||
}
|
||||
else if (*fieldType == '[' && fieldType[strlen(fieldType) - 1] == ']')
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue