XForms: io callback never called when menu is opened

Tristan Savatier (tristan@mpegtv.com)
Sun, 27 Jul 1997 19:58:53 -0700

To subscribers of the xforms list from Tristan Savatier <tristan@mpegtv.com> :

I discovered the following problem in version 0.81 and 0.86:

IO callback routines are not called by the Xforms internal
event loop when menu is opened.

I install an IO callback routine with:

fl_add_io_callback(fd, FL_READ, (void (*)(int, void
*))my_callback_routine, NULL);

According to the manual, my_callback_routine()
is supposed to be called as soon as there
is anything that is available for reading on the file
descriptor fd (a pipe), and my application relies on that.

But for some reason, it appears that when a menu is opened,
Xforms fails to check for input on fd and does not call
my_callback_routine() until the menu is closed.

And a menu can remain opened a long time, and it can even
stay open without the mouse button being pressed (a hanging
opened menu occurs when simple-clicking on the
menu object, until a selection is made). During all the
time a menu is opened, my_callback_routine() is never called.

I have not been able to find a workaround to
this problem, and this causes a serious (apparently
insolvable) problem in my application, because of the
following reason:

A background process (exec'ed by the Xform-based front-end)
sends "messages" on this fd at regular interval
and expects to receive a reply from
the X-forms application before a given timeout (say 10 sec),
for some authentification purposes.

If the correct answer is not sent back to the background
process before the time-out expires,
the background process will consider that the front-end is
not authentified.

When a menu is opened, it prevents the front-end from
reading the authentification requests, and consequently
the application is not authentified and gets killed.

Would there be a way to fix this ?

-- 
Regards, -- Tristan Savatier (President, MpegTV LLC)

MpegTV: /cgi-bin/exit-to?http://www.mpegtv.com MPEG.ORG: http://www.mpeg.org - Foot: http://www.bok.net/~tristan _________________________________________________ To unsubscribe, send the message "unsubscribe" to xforms-request@bob.usuf2.usuhs.mil or see http://bob.usuf2.usuhs.mil/mailserv/xforms.html Xforms Home Page: http://bragg.phys.uwm.edu/xforms List Archive: http://bob.usuf2.usuhs.mil/mailserv/list-archives/