aboutsummaryrefslogtreecommitdiff
path: root/src/backend/nodes/makefuncs.c
diff options
context:
space:
mode:
authorAmit Langote <amitlan@postgresql.org>2023-07-21 19:15:34 +0900
committerAmit Langote <amitlan@postgresql.org>2023-07-21 19:15:34 +0900
commit7c7412cae3ea8f8accdec1022969a9360b74f253 (patch)
tree1ce80497cc5adbe9a33723740a296de929000664 /src/backend/nodes/makefuncs.c
parent97ff8dd02ca788020021cdafb85d77d4fd3f3125 (diff)
downloadpostgresql-7c7412cae3ea8f8accdec1022969a9360b74f253.tar.gz
postgresql-7c7412cae3ea8f8accdec1022969a9360b74f253.zip
Code review for commit b6e1157e7d
b6e1157e7d made some changes to enforce that JsonValueExpr.formatted_expr is always set and is the expression that gives a JsonValueExpr its runtime value, but that's not really apparent from the comments about and the code manipulating formatted_expr. This commit fixes that. Per suggestion from Álvaro Herrera. Discussion: https://postgr.es/m/20230718155313.3wqg6encgt32adqb%40alvherre.pgsql
Diffstat (limited to 'src/backend/nodes/makefuncs.c')
-rw-r--r--src/backend/nodes/makefuncs.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/backend/nodes/makefuncs.c b/src/backend/nodes/makefuncs.c
index c6c310d2531..0e7e6e46d94 100644
--- a/src/backend/nodes/makefuncs.c
+++ b/src/backend/nodes/makefuncs.c
@@ -848,16 +848,13 @@ makeJsonFormat(JsonFormatType type, JsonEncoding encoding, int location)
* creates a JsonValueExpr node
*/
JsonValueExpr *
-makeJsonValueExpr(Expr *expr, JsonFormat *format)
+makeJsonValueExpr(Expr *raw_expr, Expr *formatted_expr,
+ JsonFormat *format)
{
JsonValueExpr *jve = makeNode(JsonValueExpr);
- jve->raw_expr = expr;
-
- /*
- * Set after checking the format, if needed, in transformJsonValueExpr().
- */
- jve->formatted_expr = NULL;
+ jve->raw_expr = raw_expr;
+ jve->formatted_expr = formatted_expr;
jve->format = format;
return jve;