mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2025-03-05 15:05:48 +02:00
Handle NULL VariantList in JSON.
This worked if the Variant was NULL but not if the Variant contained a NULL.
This commit is contained in:
parent
aaca4df983
commit
a607750be1
@ -957,8 +957,13 @@ jsonFromVar(const Variant *var)
|
||||
{
|
||||
const VariantList *vl = varVarLst(var);
|
||||
|
||||
// If not an empty array
|
||||
if (!varLstEmpty(vl))
|
||||
// If null
|
||||
if (vl == NULL)
|
||||
{
|
||||
strCat(jsonStr, NULL_STR);
|
||||
}
|
||||
// Else if not an empty array
|
||||
else if (!varLstEmpty(vl))
|
||||
{
|
||||
strCatZ(jsonStr, "[");
|
||||
|
||||
|
@ -264,6 +264,7 @@ testRun(void)
|
||||
varLstAdd(varVarLst(varListOuter), varNewInt64(9223372036854775807LL));
|
||||
varLstAdd(varVarLst(varListOuter), varNewInt(2147483647));
|
||||
varLstAdd(varVarLst(varListOuter), varNewBool(true));
|
||||
varLstAdd(varVarLst(varListOuter), varNewVarLst(NULL));
|
||||
varLstAdd(varVarLst(varListOuter), varNewVarLst(varLstNew()));
|
||||
varLstAdd(varVarLst(varListOuter), NULL);
|
||||
varLstAdd(varVarLst(varListOuter), keyValue);
|
||||
@ -271,7 +272,7 @@ testRun(void)
|
||||
TEST_ASSIGN(json, jsonFromVar(varListOuter), "VariantList");
|
||||
TEST_RESULT_STR_Z(
|
||||
json,
|
||||
"[\"ASTRING\",9223372036854775807,2147483647,true,[],null,{\"backup-info-size-delta\":1982702,"
|
||||
"[\"ASTRING\",9223372036854775807,2147483647,true,null,[],null,{\"backup-info-size-delta\":1982702,"
|
||||
"\"backup-prior\":\"20161219-212741F_20161219-212803I\","
|
||||
"\"backup-reference\":[\"20161219-212741F\",\"20161219-212741F_20161219-212803I\",null],"
|
||||
"\"backup-timestamp-start\":1482182951,\"checksum-page-error\":[1],"
|
||||
@ -284,7 +285,7 @@ testRun(void)
|
||||
TEST_ASSIGN(json, jsonFromVar(varListOuter), "VariantList - multiple elements");
|
||||
TEST_RESULT_STR_Z(
|
||||
json,
|
||||
"[\"ASTRING\",9223372036854775807,2147483647,true,[],null,{\"backup-info-size-delta\":1982702,"
|
||||
"[\"ASTRING\",9223372036854775807,2147483647,true,null,[],null,{\"backup-info-size-delta\":1982702,"
|
||||
"\"backup-prior\":\"20161219-212741F_20161219-212803I\","
|
||||
"\"backup-reference\":[\"20161219-212741F\",\"20161219-212741F_20161219-212803I\",null],"
|
||||
"\"backup-timestamp-start\":1482182951,\"checksum-page-error\":[1],"
|
||||
|
Loading…
x
Reference in New Issue
Block a user