From 49b60a4be7cb8bbfb9d954cc5b81d0dc18b077df Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 10 Dec 2014 19:06:27 -0500 Subject: [PATCH] Fix minor thinko in convertToJsonb(). The amount of space to reserve for the value's varlena header is VARHDRSZ, not sizeof(VARHDRSZ). The latter coding accidentally failed to fail because of the way the VARHDRSZ macro is currently defined; but if we ever change it to return size_t (as one might reasonably expect it to do), convertToJsonb() would have failed. Spotted by Mark Dilger. --- src/backend/utils/adt/jsonb_util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/utils/adt/jsonb_util.c b/src/backend/utils/adt/jsonb_util.c index 2ff85396d01..c62941baa7b 100644 --- a/src/backend/utils/adt/jsonb_util.c +++ b/src/backend/utils/adt/jsonb_util.c @@ -1377,7 +1377,7 @@ convertToJsonb(JsonbValue *val) initStringInfo(&buffer); /* Make room for the varlena header */ - reserveFromBuffer(&buffer, sizeof(VARHDRSZ)); + reserveFromBuffer(&buffer, VARHDRSZ); convertJsonbValue(&buffer, &jentry, val, 0);