diff options
Diffstat (limited to 'src/backend/catalog/index.c')
| -rw-r--r-- | src/backend/catalog/index.c | 24 |
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' : ' '; } } |
