Nominate our 2022 Qt Champions!

Crashes on iOS on QApplication::processEvents()

  • Hi,

    i have developed an app which uses QApplication::processEvents() on several occasions. Sometimes to force Rerendering, sometimes to fix issues on the mobile platforms.

    Today i updated our test iOS device to iOS 9.2.1., since then the call leads to crashes on many (but not all) calls to processEvents . I figured out the crashing calls, but i do not see anything which could help identifying the issue.

    It seems that all crashing calles to QApplication::processEvents() are in classes made by myself that overwrite QWidget. All in main.cpp and MainWindow do work.

    Anyone experienced similar issues? Everything works fine on Android and PC btw. Also not helpful is that i updated Qt too on the same day. Now Qt 5.5.1, so i do not really know if the iOS update or the Qt update is the reason.

    Any ideas, any known issues? Is there a reason why QApplication::processEvents() 'correctly' could crash on iOS and not the other platforms? Any feedback would be highly appreciated, as i have a bad feeling releasing an app on which i currently not know why it was crashing and if it still will crash and i just was lucky that it didn't while testing.

  • I have no idea how iOS works, but I had similar experience with Android. I have an old application with history in Nokia's Maemo, MeeGo & Symbian and all those platforms required sprinking the code with processEvents() (at sometimes different places!), but when porting the app to Android I removed all the processEvents() calls because the caused crashes or unresponsiveness. So that's an idea: if they cause crashes, why not take them out with some conditional compiling based on target. At least try and see what happens.

Log in to reply