aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_func.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/parser/parse_func.c')
-rw-r--r--src/backend/parser/parse_func.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/src/backend/parser/parse_func.c b/src/backend/parser/parse_func.c
index dc533d1dbd3..81b887e8a5f 100644
--- a/src/backend/parser/parse_func.c
+++ b/src/backend/parser/parse_func.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_func.c,v 1.30 1998/10/08 18:29:45 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_func.c,v 1.31 1998/11/27 19:52:13 vadim Exp $
*
*-------------------------------------------------------------------------
*/
@@ -516,7 +516,7 @@ func_get_candidates(char *funcname, int nargs)
Relation heapRelation;
Relation idesc;
ScanKeyData skey;
- HeapTuple tuple;
+ HeapTupleData tuple;
IndexScanDesc sd;
RetrieveIndexResult indexRes;
Form_pg_proc pgProcP;
@@ -537,20 +537,17 @@ func_get_candidates(char *funcname, int nargs)
do
{
- tuple = (HeapTuple) NULL;
-
indexRes = index_getnext(sd, ForwardScanDirection);
if (indexRes)
{
- ItemPointer iptr;
Buffer buffer;
- iptr = &indexRes->heap_iptr;
- tuple = heap_fetch(heapRelation, SnapshotNow, iptr, &buffer);
+ tuple.t_self = indexRes->heap_iptr;
+ heap_fetch(heapRelation, SnapshotNow, &tuple, &buffer);
pfree(indexRes);
- if (HeapTupleIsValid(tuple))
+ if (tuple.t_data != NULL)
{
- pgProcP = (Form_pg_proc) GETSTRUCT(tuple);
+ pgProcP = (Form_pg_proc) GETSTRUCT(&tuple);
if (pgProcP->pronargs == nargs)
{
current_candidate = (CandidateList)
@@ -884,7 +881,7 @@ func_get_detail(char *funcname,
else
{
pform = (Form_pg_proc) GETSTRUCT(ftup);
- *funcid = ftup->t_oid;
+ *funcid = ftup->t_data->t_oid;
*rettype = pform->prorettype;
*retset = pform->proretset;