Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-98088

[Regression, macOS] quit() before exec() quits instantly.

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 6.3.0 Alpha
    • 6.2
    • Core: Event loop
    • None
    • macOS
    • 851ed6f0b1014e5acabdc1f977979841d16ecc31 (qt/qtbase/dev) 0fb4e97f3837d7c1802a28c5f728effb788f6cc5 (qt/qtbase/6.2)

    Description

      After this commit:

      https://github.com/qt/qtbase/commit/0c02f133f3daee146b805149e69bba8cee6727b2

      Calling QApplication::quit() before QApplication::exec() quits instantly on [NSApp terminate:nil]; line, while in Qt 5.15.2 it was behaving as it is said in the docs:

      "If a signal connected (non-queued) to this slot is emitted before control enters the main event loop (such as before "int main" calls exec()), the slot has no effect and the application never exits." (https://doc-snapshots.qt.io/qt6-dev/qcoreapplication.html#quit)

      This may result in critical bugs if you're not lucky. For example, rendering the application non-launchable, if it calls quit() and expects to shut down in a predictable way. For me it introduced the worst bug in several years in the stable released on everybody version of the app

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-98088
          # Subject Branch Project Status CR V

          Activity

            People

              vestbo Tor Arne Vestbø
              johnpreston John Preston
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes