Memory profile
Maxim Kizub
max at immsp.kiev.ua
Tue Jan 26 14:54:48 PST 1999
Hello.
I've found memory leak.
It's in kaffe/kaffevm/inflate.c :
int
inflate_free(inflateInfo* pG)
{
if (pG->fixed_tl != 0)
{
huft_free(pG->fixed_td);
huft_free(pG->fixed_tl);
pG->fixed_td = pG->fixed_tl = 0;
KFREE(pG->slide);
}
KFREE(pG);
return 0;
}
needs to be:
int
inflate_free(inflateInfo* pG)
{
if (pG->fixed_tl != 0)
{
huft_free(pG->fixed_td);
huft_free(pG->fixed_tl);
pG->fixed_td = pG->fixed_tl = 0;
}
KFREE(pG->slide);
KFREE(pG);
return 0;
}
The most strange thing, is that it saves me not
only those 6Mb it was eating, but allowed to GC
about 1.5 times more objects. Since block allocated
by KMALLOC should not be scanned by GC for
object references - this is really strange...
PS There was a bug reported early, about memory leak
in something releted to zip files...
I can't find it in my archive... Was it really
fixed? Or I have refound it?
Regards
Maxim Kizub
More information about the kaffe
mailing list