gpi-hash.c segfaults_(re)

Thu, 31 Jul 1997 01:29:34 +0200 (MET DST)


According to Bill Currie:
> 
> I'VE FIXED IT!!  The problem was caused by a negative index into the 
> hash table.

Congratulations and thank you!

> To fix it change the line (gci-hash.c:122):
>
> (((((char *)(NODE))-(char *)0) >> 2) % MAX_HASH_TABLE)
> 
> to:
> 
> (((((unsigned long)(NODE))-(unsigned long)0) >> 2) % MAX_HASH_TABLE)

Since pointers and `long' integers don't have the same size
on some sytems (I know it for the Alpha), I think this should
be changed to something like `(unsigned size_t)'.

> [...]
> Well, anyway, maybe now this bug can be laid to rest...

I hope so, too.

Having this, it's realistic to have the next beta release within
the next days ...

Yours,

    Peter

 Dipl.-Phys. Peter Gerwinski, Essen, Germany, free physicist and programmer
peter.gerwinski@uni-essen.de - http://home.pages.de/~peter.gerwinski/ [970201]
 maintainer GNU Pascal [970714] - http://home.pages.de/~gnu-pascal/ [970125]


Peter Gerwinski (peter@agnes.dida.physik.uni-essen.de)

HTML conversion by Lluís de Yzaguirre i Maura
Institut de Lingüística Aplicada - Universitat "Pompeu Fabra"
e-mail: de_yza@upf.es