Symptom:
authorMarc G. Fournier
Thu, 5 Feb 1998 15:08:49 +0000 (15:08 +0000)
committerMarc G. Fournier
Thu, 5 Feb 1998 15:08:49 +0000 (15:08 +0000)
        select  from  a  table  with  attrs  (a  int, b char(20))
        crashed in bpcharout() (palloc of -1 bytes). But a  table
        with attrs (a int, b varchar(20)) worked.

From: Jan Wieck 

src/backend/access/common/heaptuple.c

index 5cd255285f8b86166db44d4882b99441574a9925..2ab5673787d56e67574114d1d37c4093244eb69b 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/access/common/heaptuple.c,v 1.33 1998/02/05 03:47:08 momjian Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/access/common/heaptuple.c,v 1.34 1998/02/05 15:08:49 scrappy Exp $
  *
  * NOTES
  *   The old interface functions have been converted to macros
@@ -554,7 +554,7 @@ nocachegetattr(HeapTuple tup,
        while (att[j]->attcacheoff > 0)
            j++;
 
-       if (!VARLENA_FIXED_SIZE(att[j]))
+       if (!VARLENA_FIXED_SIZE(att[j - 1]))
            off = att[j - 1]->attcacheoff + att[j - 1]->attlen;
        else
            off = att[j - 1]->attcacheoff + att[j - 1]->atttypmod;