|
8 | 8 | *
|
9 | 9 | *
|
10 | 10 | * IDENTIFICATION
|
11 |
| - * $PostgreSQL: pgsql/src/backend/executor/nodeFunctionscan.c,v 1.32 2005/03/31 22:46:08 tgl Exp $ |
| 11 | + * $PostgreSQL: pgsql/src/backend/executor/nodeFunctionscan.c,v 1.33 2005/04/14 22:09:40 tgl Exp $ |
12 | 12 | *
|
13 | 13 | *-------------------------------------------------------------------------
|
14 | 14 | */
|
@@ -211,6 +211,13 @@ ExecInitFunctionScan(FunctionScan *node, EState *estate)
|
211 | 211 | elog(ERROR,"function in FROM has unsupported return type");
|
212 | 212 | }
|
213 | 213 |
|
| 214 | +/* |
| 215 | + * For RECORD results, make sure a typmod has been assigned. (The |
| 216 | + * function should do this for itself, but let's cover things in case |
| 217 | + * it doesn't.) |
| 218 | + */ |
| 219 | +BlessTupleDesc(tupdesc); |
| 220 | + |
214 | 221 | scanstate->tupdesc=tupdesc;
|
215 | 222 | ExecSetSlotDescriptor(scanstate->ss.ss_ScanTupleSlot,
|
216 | 223 | tupdesc, false);
|
|