summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-05-29 17:11:07 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-05-29 17:11:07 +0000
commit4f142baf3710814d3fa268020cc7f349ca3c69ea (patch)
treedb3dc2507f1a0a6fdd63c60003718ee491bc7a83
parent5454eb04567cf04361546f34cc1e7d90a5818160 (diff)
downloadpostgresql-4f142baf3710814d3fa268020cc7f349ca3c69ea.tar.gz
expandRTE and get_rte_attribute_type mistakenly always imputed typmod -1
to columns of an RTE that was a function returning RECORD with a column definition list. Apparently no one has tried to use non-default typmod with a function returning RECORD before.
-rw-r--r--src/backend/parser/parse_relation.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/parser/parse_relation.c b/src/backend/parser/parse_relation.c
index 65c386a937..40417e1473 100644
--- a/src/backend/parser/parse_relation.c
+++ b/src/backend/parser/parse_relation.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_relation.c,v 1.79 2002/09/04 20:31:24 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_relation.c,v 1.79.2.1 2005/05/29 17:11:07 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1372,7 +1372,7 @@ expandRTE(ParseState *pstate, RangeTblEntry *rte,
varnode = makeVar(rtindex,
attnum,
atttypid,
- -1,
+ colDef->typename->typmod,
sublevels_up);
*colvars = lappend(*colvars, varnode);
@@ -1631,7 +1631,7 @@ get_rte_attribute_type(RangeTblEntry *rte, AttrNumber attnum,
ColumnDef *colDef = nth(attnum - 1, coldeflist);
*vartype = typenameTypeId(colDef->typename);
- *vartypmod = -1;
+ *vartypmod = colDef->typename->typmod;
}
else
elog(ERROR, "Unknown kind of return type specified for function");