gpi-hash.c segfaults _(re)
Wed, 23 Jul 1997 17:55:05 +0200 (MET DST)
According to myself (Peter Gerwinski):
>
> I just succeeded to reproduce the bug under Linux DOSEMU.
That was bogus. :-( What I did was to move `gpc1' around after compiling,
but my `gpc1.exe' was still gpc-970714. With gpc-970721 I still cannot
reproduce the bug. :-( :-(
I am uploading my version of `gpc1.exe' (which happily compiled your
"foo.pas" sample program) to
ftp://agnes.dida.physik.uni-essen.de/home/peter/gpc1.exe.gz
If the error still occurs ... well, what can we do then?
Then we are in trouble:
To produce the error, in line 134 of `gpi-hash.c',
for (l = hash_table[hi]; l && l->node; l = l->next)
`l' must be nonzero, but point to some nonsense. How do entries in
`hash_table' get their values? At the beginning of each storing/loading
of a GPI file, `hash_table' is `bzero'ed now, and the only other access
to `hash_table' is in `set_uid()' (line 173-177) - where I don't see any
error. So the only remaining origin of this error I can think of is if
some other part of GPC destroys the contents of `hash_table' ... :-(
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