diff --git a/src/backend/access/transam/transsup.c b/src/backend/access/transam/transsup.c
index 61767d6bb0d23c9ce8ee58619bbccf41a716fe67..5f9b4c0a66c08fbbb8e8520ea41433b753f06e52 100644
--- a/src/backend/access/transam/transsup.c
+++ b/src/backend/access/transam/transsup.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/access/transam/Attic/transsup.c,v 1.6 1996/11/05 11:12:30 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/access/transam/Attic/transsup.c,v 1.7 1996/12/14 05:20:39 vadim Exp $
  *
  * NOTES
  *    This file contains support functions for the high
@@ -119,8 +119,8 @@ TransBlockGetLastTransactionIdStatus(Block tblock,
      * ----------------
      */
     maxIndex = TP_NumXidStatusPerBlock;
-    for (index = maxIndex-1; index>=0; index--) {
-	offset =  BitIndexOf(index);
+    for (index = maxIndex; index > 0; index--) {
+	offset =  BitIndexOf(index-1);
 	bit1 =    ((bits8) BitArrayBitIsSet((BitArray) tblock, offset++)) << 1;
 	bit2 =    (bits8)  BitArrayBitIsSet((BitArray) tblock, offset);
 	
@@ -135,7 +135,7 @@ TransBlockGetLastTransactionIdStatus(Block tblock,
 	if (xstatus != XID_INPROGRESS) {
 	    if (returnXidP != NULL) {
 		TransactionIdStore(baseXid, returnXidP);
-		TransactionIdAdd(returnXidP, index);
+		TransactionIdAdd(returnXidP, index - 1);
 	    }
 	    break;
 	}