Hi Markus, I've added UITest_writerperfect_epubexport a while ago, and while I did not see it hanging in the recent past, both Noel and Stephan run into a hang of it from time to time. The code is here: writerperfect/qa/uitest/epubexport/epubexport.py The backtrace always looks like this: self.ui_test.execute_blocking_action() gets an UNO method where invoking it opens a dialog and the python method also gets a callback. When the hang happens, then it seems the problem is that the Python thread waits for the dialog to be closed, but in fact it's already closed, so it waits forever joining the python thread. I don't think there is anything really special in this test, rather I guess the problem happens here more frequently (than elsewhere) because normally these dialogs are invoked via UNO commands, where we just execute the UNO command, wait for the dialog to appear then work with it. (I did not look at the implementation, perhaps in this case there is no Python thread involved?) So I wonder -- do you think it would be possible or would make sense to have a way similar to self.xUITest.executeCommand (execute a blocking command async), but for UNO methods that open a dialog? I.e. also similar to self.ui_test.execute_blocking_action, but without an actual callback. Perhaps that would be a fix for these strange hangs. Backtraces: - python: https://pastebin.ca/3942603 - native one: https://pastebin.ca/3942628 (From a run that resulted in a hang for Noel.) Thanks, Miklos
Attachment:
signature.asc
Description: Digital signature