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

Multiple events emitted from a single object in different thread cause NullPointer exception in QStateMachinePrivate

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Done
    • Affects Version/s: 5.8.0
    • Fix Version/s: 5.9.4
    • Component/s: Core: State Machine
    • Labels:
      None
    • Environment:
      Linux Ubuntu 16.04, MacOS El Capitan.
    • Commits:
      345be581007c05164052e27f90fcfaf27a41c743

      Description

      A simple scenario.

       

      State machine s1->final_State

      With transition from an object that lives in a different thread.

      If the objects emits a signal multiple times, the first one is consumed correctly. The second one causes core dump since sender is NULL in QStateMachinePrivate::handleTransitionSignal.

       

      MWE project is in attachment. Just click on the button.

        Attachments

        1. emitter.cpp
          0.1 kB
        2. emitter.h
          0.2 kB
        3. main.cpp
          3 kB
        4. pp.pro
          0.4 kB
        5. win.cpp
          0.5 kB
        6. win.h
          0.3 kB
        7. workerth.cpp
          0.4 kB
        8. workerth.h
          0.4 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            jefernan Jesus Fernandez
            Reporter:
            pavleb Pavle Boskoski
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes