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

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

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Done
    • Affects Version/s: 6.2
    • Fix Version/s: 6.3.0 Alpha
    • Component/s: Core: Event loop
    • Labels:
      None
    • Platform/s:
      macOS
    • Commits:
      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

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              vestbo Tor Arne Vestbø
              Reporter:
              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