Re: XForms: Re: fl_do_forms() and signals

Steve Lamont (spl@szechuan.ucsd.edu)
Tue, 16 Feb 99 15:26:11 PST

# To subscribers of the xforms list from spl@szechuan.ucsd.edu (Steve Lamont) :

> Set the user signal interrupt to my_handler and raise(SIGUSR1) everytime a
> update is required. But the X-server still gives me async errors during
> updates. So the next step was to use:
>
> fl_add_signal_callback(SIGUSR1,my_handler,0);
>
> but the problem here is that, the callback does not always finish that is
> it does not return from my_handler and just hangs the program. So using
> your example I first set the signal directly
>
> sigset(SIGUSR1,pass_to_forms);
> fl_app_signal_direct(1);
> fl_add_signal_callback(SIGUSR1,my_handler,0);
>
> where
> void pass_to_forms(int signum, void *data)
> {
> fl_signal_caught(SIGUSR1);
> }
>
> but the same thing happens, my_handler does not always return and the
> program hangs.

Check my article "Infinite loop in fl_signal_caught() under IRIX 6.x"
dated December 1, 1998, in the archives. I discuss a workaround for a
similar problem.

spl

_________________________________________________
To unsubscribe, send the message "unsubscribe" to
xforms-request@bob.usuhs.mil or see
http://bob.usuhs.mil/mailserv/xforms.html
XForms Home Page: http://bragg.phys.uwm.edu/xforms
List Archive: http://bob.usuhs.mil/mailserv/list-archives/