Andreas Beck <[EMAIL PROTECTED]> writes:
> > I've found some bugs in svgalib target (in libggi 2.0b4 - still present
> > in 2.0.1):
> > The first is in GGI_svga_setmode (mode.c, line 228): vis->mode->frames
> > is used before it's initialized (i.e. tm is copied into vis->mode) - so
> > tm->frames should be used here.
> >
> > The second is in GGI_svga_checkmode (mode.c, line 369): there should be
> > ||, not && in condition.
These bugfixes look good. Thanks!
> > Third problem is harder to fix (I think): any program used with libggi
> > and svgalib target segfaults on exit (at least with svgalib 1.9.9).
> > I think it's because svgalib (1.9.9) sets atexit() on initializing
> > (which is done in vga_setmode() or vga_safety_fork()), and libvga.so.1
> > is unloaded on ggiClose or ggiExit.
> > Possible solution is to add condition in _ggiRemoveDL that doesn't allow
> > to unload libvga.so.1 (possibly with svgalib.so) if it was initialized.
> > Alternative solution is to unload modules in some function set as
> > atexit() before initializing svgalib.
This is indeed a hairy problem. I usually don't have the problem,
unless I open and close visuals more than once inside the same
process. I will look into this again when I have some more time.
Have a nice day,
--
Tijs van Bakel, <[EMAIL PROTECTED]>