Sander Jansen s.jansen at gmail.com
Tue Mar 2 07:43:42 PST 2010

I've integrated dbus on my FOX based application
(www.fox-toolkit.org). I've got a question regarding the proper way of
handling timeouts. Suppose a timeout has been set, and the timer
events gets fired. In my callback I call:


1) is the timeout object still valid after calling
dbus_timeout_handle(). In FOX I need register the timer again after it
gets fired. ?

2) can the add/remove/toggle timeout callbacks be called from within

The reason I'm asking is because I'm trying to find the cause of a
crash when calling dbus_timeout_handle:

#1  0xb77b0382 in dbus_timeout_handle () from /usr/lib/libdbus-1.so.3
#2  0x0811a155 in FX::FXDBusConnection::onTimeOut (this=0x81d0808,
   at src/fxdbus.cpp:512
#3  0x081199d1 in FX::FXDBusConnection::handle (this=0x81d0808,
   sel=3473410, ptr=0x84a1590) at src/fxdbus.cpp:294

#4  0xb7e2dde2 in FX::FXObject::tryHandle(FX::FXObject*, unsigned int, void*) ()
  from /usr/lib/libFOX-1.6.so.0
#5  0xb7d4e568 in FX::FXApp::handleTimeouts() () from /usr/lib/libFOX-1.6.so.0
#6  0xb7d4ea24 in FX::FXApp::getNextEvent(_XEvent&, bool) () from
#7  0xb7d4bd8e in FX::FXApp::runOneEvent(bool) () from /usr/lib/libFOX-1.6.so.0
#8  0xb7d4c018 in FX::FXApp::run() () from /usr/lib/libFOX-1.6.so.0
#9  0x080af1aa in GMPlayerManager::run (this=0xbffff48c, argc=@0xbffff5b0,
   at src/GMPlayerManager.cpp:1022
#10 0x0811842d in main (argc=1, argv=0xbffff654) at src/main.cpp:54



"The sands of time were eroded by
The river of constant change."

More information about the dbus mailing list