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

ProcessEvents hang

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: P2: Important P2: Important
    • None
    • 5.6.0
    • QPA
    • None
    • Mac OS X
    • macOS

      I've encountered a hang inside QCocoaEventDispatcher::processEvents.
      What happens (quite difficult to explain to be honest):
      Check the attached screenshot. We are 2 times in QCocoaEventDispatcher::processEvents(). So my previous dialog just closed, endModalSession called, d->interrupt became true, no cleanup session yet. Then I go to 'second' processEvents which is called from QApplication::processEvents, no real dialog here (without exiting the loop in 'first' processEvents) and d->interrupt becomes false again. As a result the loop in 'first' processEvents becomes endless.

      It all looks exactly like QTBUG-45389 which is closed by some reason. I've attached the patch which helps me. Basically I just added cleanupModalSessions into the hanging loop. Could somebody review it and apply if possible?

        1. ProcessEvents.png
          854 kB
          Vitali Prudnikovich
        2. qcocoaeventdispatcher.patch
          1 kB
          Vitali Prudnikovich
        3. eventsOverlapHang.zip
          42 kB
          Vitali Prudnikovich
        4. eventsOverlapHang2.zip
          42 kB
          Vitali Prudnikovich
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            dedietri Gabriel de Dietrich (drgvond)
            vitalipf Vitali Prudnikovich
            Votes:
            2 Vote for this issue
            Watchers:
            11 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes