[Bug 358145] [NEW] QtReactor bug, unable to remove WRITE handler
Matt
mwlazlo at gmail.com
Thu Apr 9 02:02:28 UTC 2009
Public bug reported:
Binary package hint: libace-qtreactor-5.6.3
In my program's output_handler() function, if my output buffer is empty
or becomes empty after the send(), I call ACE_Reactor::remove_handler()
to be taken off the notification list for writing. Unfortunately, this
does not work because ACE continues to repeatedly call output_handler().
The QtReactor code seems to turn the handler's associated
QSocketNotifier on or off depending on what
ACE_Select_Reactor_Handle_Set (wait_set_ and suspend_set_) is passed to
QtReactor::bit_ops() [see patch]. The problem arises because when the
user passes in CLR_MASK, QtReactor::bit_ops() is called twice in
succession with wait_set_ and suspend_set_ respectively as arguments -
effectively turning the QtSocketNotifier off then on again.
Patch and testcase attached.
** Affects: ace (Ubuntu)
Importance: Undecided
Status: New
--
QtReactor bug, unable to remove WRITE handler
https://bugs.launchpad.net/bugs/358145
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
--
ubuntu-bugs mailing list
ubuntu-bugs at lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
More information about the universe-bugs
mailing list