summaryrefslogtreecommitdiff
path: root/src/backend/catalog/index.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/catalog/index.c')
-rw-r--r--src/backend/catalog/index.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index a14a41b9df..4a46528e0f 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.56 1998/08/28 03:36:25 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.57 1998/08/28 04:57:19 momjian Exp $
*
*
* INTERFACE ROUTINES
@@ -1267,6 +1267,7 @@ FormIndexDatum(int numberOfAttributes,
FuncIndexInfoPtr fInfo)
{
AttrNumber i;
+ int offset;
bool isNull;
/* ----------------
@@ -1276,16 +1277,19 @@ FormIndexDatum(int numberOfAttributes,
* ----------------
*/
- for (i = 0; i < numberOfAttributes; i++)
+ for (i = 1; i <= numberOfAttributes; i++)
{
- datum[i] = PointerGetDatum(GetIndexValue(heapTuple,
- heapDescriptor,
- i,
- attributeNumber,
- fInfo,
- &isNull));
-
- nullv[i] = (isNull) ? 'n' : ' ';
+ offset = AttrNumberGetAttrOffset(i);
+
+ datum[offset] =
+ PointerGetDatum(GetIndexValue(heapTuple,
+ heapDescriptor,
+ offset,
+ attributeNumber,
+ fInfo,
+ &isNull));
+
+ nullv[offset] = (isNull) ? 'n' : ' ';
}
}