Skip to content

Commit f94e8c6

Browse files
author
Nikita Glukhov
committed
Add JsonContainerAlloc() macro
1 parent e0336b1 commit f94e8c6

File tree

4 files changed

+6
-4
lines changed

4 files changed

+6
-4
lines changed

src/backend/utils/adt/json.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2767,8 +2767,7 @@ jsontFillValue(JsonIterator **pit, JsonValue *res, bool skipNested,
27672767

27682768
res->type = jbvBinary;
27692769
res->val.binary.len = 0;
2770-
res->val.binary.data = (JsonContainer *)
2771-
palloc(sizeof(JsonContainer));
2770+
res->val.binary.data = JsonContainerAlloc();
27722771

27732772
if (skipNested)
27742773
{

src/backend/utils/adt/json_generic.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ JsonValueToContainer(const JsonValue *val)
171171
return val->val.binary.data;
172172
else
173173
{
174-
JsonContainerData *jc = palloc(sizeof(JsonContainerData));
174+
JsonContainerData *jc = JsonContainerAlloc();
175175
jsonvInitContainer(jc, val);
176176
return jc;
177177
}

src/backend/utils/adt/jsonb_util.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -614,7 +614,7 @@ fillJsonbValue(const JsonbContainer *container, int index,
614614
{
615615
Assert(JBE_ISCONTAINER(entry));
616616
result->type = jbvBinary;
617-
result->val.binary.data = palloc(sizeof(JsonContainerData));
617+
result->val.binary.data = JsonContainerAlloc();
618618
jsonbInitContainer((JsonContainerData *) result->val.binary.data,
619619
/* Remove alignment padding from data pointer and length */
620620
(JsonbContainer *)(base_addr + INTALIGN(offset)),

src/include/utils/json_generic.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,9 @@ JsonIteratorNext(JsonIterator **it, JsonValue *val, bool skipNested)
227227
extern Json *DatumGetJson(Datum val, JsonContainerOps *ops,
228228
CompressionOptions options);
229229

230+
#define JsonContainerAlloc() \
231+
((JsonContainerData *) palloc(sizeof(JsonContainerData)))
232+
230233
extern JsonValue *JsonFindValueInContainer(JsonContainer *json, uint32 flags,
231234
JsonValue *key);
232235

0 commit comments

Comments
 (0)