[ Thread Index |
| More lists.liballeg.org/allegro-developers Archives
Sorry for the delay.
> > umodules:
> > > > Modules (in linux/umodules) are loaded 2 times.
> > >
> > > Could you elaborate a bit? If I put a printf() right after dlopen()
> > > in unix/umodules.c, I see only one line per module in module.lst
> > > with the main test program.
> > This happens only on the Linux console (not under X). If the system is
> > autodetected and nothing is specified in the config file,
> > (x/xsystem.c) is called before sys_linux_init (linux/lsystem.c). It
> > loads the modules and only then tries to open a display, which fails.
> > sys_linux_init is called and loads the modules again.
> _xwin_sysdrv_exit() seems to be called the right places, which would
> unload the modules first. What am I missing?
I didn't see the call to _xwin_sysdrv_exit, sorry.
> > reentrant, and on very heavy loads it fills up the memory with trash.
[ skip ]
>but everything seemed to work
> okay (I don't know how!)
When I say "very heavy loads", it's *very* heavy : the problem appeared
when running an Allegro program on top of Valgrind (which emulates a cpu),
using a graphic tablet (which sends more information, far more often than a
mouse). No wonder it worked well for normal people :)
> Please try the attached patch (only SIGARLM is used, although I guess
> SIGIO would theoretically be more responsive).