|
8 | 8 | *
|
9 | 9 | *
|
10 | 10 | * IDENTIFICATION
|
11 |
| - * $Header: /cvsroot/pgsql/src/backend/catalog/pg_proc.c,v 1.74 2002/05/2217:20:58 petere Exp $ |
| 11 | + * $Header: /cvsroot/pgsql/src/backend/catalog/pg_proc.c,v 1.75 2002/05/2218:33:15 tgl Exp $ |
12 | 12 | *
|
13 | 13 | *-------------------------------------------------------------------------
|
14 | 14 | */
|
@@ -140,7 +140,6 @@ ProcedureCreate(const char *procedureName,
|
140 | 140 | elog(ERROR,"method %s already an attribute of type %s",
|
141 | 141 | procedureName,format_type_be(typev[0]));
|
142 | 142 |
|
143 |
| - |
144 | 143 | /*
|
145 | 144 | * All seems OK; prepare the data to be inserted into pg_proc.
|
146 | 145 | */
|
@@ -177,7 +176,6 @@ ProcedureCreate(const char *procedureName,
|
177 | 176 | CStringGetDatum(probin));
|
178 | 177 | /* proacl will be handled below */
|
179 | 178 |
|
180 |
| - |
181 | 179 | rel=heap_openr(ProcedureRelationName,RowExclusiveLock);
|
182 | 180 | tupDesc=rel->rd_att;
|
183 | 181 |
|
@@ -220,7 +218,8 @@ ProcedureCreate(const char *procedureName,
|
220 | 218 | procedureName);
|
221 | 219 | }
|
222 | 220 |
|
223 |
| -/* do not change existing permissions, either */ |
| 221 | +/* do not change existing ownership or permissions, either */ |
| 222 | +replaces[Anum_pg_proc_proowner-1]=' '; |
224 | 223 | replaces[Anum_pg_proc_proacl-1]=' ';
|
225 | 224 |
|
226 | 225 | /* Okay, do it... */
|
@@ -258,9 +257,9 @@ ProcedureCreate(const char *procedureName,
|
258 | 257 | /* Verify function body */
|
259 | 258 | if (OidIsValid(languageValidator))
|
260 | 259 | {
|
261 |
| -/* Advance command counter sorecursive functions can bedefined */ |
| 260 | +/* Advance command counter sonew tuple can beseen by validator */ |
262 | 261 | CommandCounterIncrement();
|
263 |
| -OidFunctionCall1(languageValidator,retval); |
| 262 | +OidFunctionCall1(languageValidator,ObjectIdGetDatum(retval)); |
264 | 263 | }
|
265 | 264 |
|
266 | 265 | returnretval;
|
|