Hi, I have a function putMessageBox which shows a message box dialog like this (it's Python but I think it's not specific to that language): ... dialog.run() dialog.hide() ... Calling the function normally from somewhere in the main thread works, but when I execute it with def helper(): putMessageBox(...) gobject.idle_add(helper) it deadlocks as soon as I press the OK button on the dialog. The dialog does not disappear, the buttons stays pressed and the complete application is stuck. Same with timeout_add, of course. If I replace run() by show(), which of course shows the dialog only for some nanoseconds, the deadlock does not occur. Do you know what the problem is?? |