From: Andrew Dunstan Date: Wed, 18 Jun 2014 23:28:20 +0000 (-0400) Subject: Remove unnecessary check for jbvBinary in convertJsonbValue. X-Git-Tag: REL9_4_BETA2~76 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a6896e00058c55692347f898a9bc2a2974520df8;p=postgresql Remove unnecessary check for jbvBinary in convertJsonbValue. The check was confusing and is a condition that should never in fact happen. Per gripe from Dmitry Dolgov. --- diff --git a/src/backend/utils/adt/jsonb_util.c b/src/backend/utils/adt/jsonb_util.c index 93bb148232..04f35bfffc 100644 --- a/src/backend/utils/adt/jsonb_util.c +++ b/src/backend/utils/adt/jsonb_util.c @@ -1314,7 +1314,14 @@ convertJsonbValue(StringInfo buffer, JEntry *header, JsonbValue *val, int level) if (!val) return; - if (IsAJsonbScalar(val) || val->type == jbvBinary) + /* + * A JsonbValue passed as val should never have a type of jbvBinary, + * and neither should any of its sub-components. Those values will be + * produced by convertJsonbArray and convertJsonbObject, the results of + * which will not be passed back to this function as an argument. + */ + + if (IsAJsonbScalar(val)) convertJsonbScalar(buffer, header, val); else if (val->type == jbvArray) convertJsonbArray(buffer, header, val, level);