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

Qt app crashes with Windows Narrator enabled

    XMLWordPrintable

Details

    • Bug
    • Resolution: Out of scope
    • P1: Critical
    • None
    • 4.8.5
    • None

    Description

      This worked well in 4.8.4, but I guess is broken (or revealed) after fixing QTBUG-26187. Application simply crashes during work and the stack dump looks this way:

      Crash reason:  EXCEPTION_ACCESS_VIOLATION_WRITE
      Crash address: 0x20
      
      Thread 0 (crashed)
       0  QtCore4.dll!QMetaObject::changeGuard(QObject * *,QObject *) + 0x1e4
          rbx = 0x00000077d65aeaa0   r12 = 0x00000000000406e2
          r13 = 0x00000077dc407d20   r14 = 0x0000000000000000
          r15 = 0x0000000000000001   rip = 0x0000000073015444
          rsp = 0x00000077d63caf20   rbp = 0x00000077dc407d00
          Found by: given as instruction pointer in context
       1  QtGui4.dll!qMakePair<QPointer<QObject>,int>(QPointer<QObject> const &,int const &) + 0x23
          rip = 0x0000000071b525c4   rsp = 0x00000077d63caf70
          rbp = 0x00000077dc407d00
          Found by: stack scanning
       2  QtGui4.dll!QAccessible::updateAccessibility(QObject *,int,QAccessible::Event) + 0x510
          rip = 0x0000000071b4f401   rsp = 0x00000077d63cafb0
          rbp = 0x00000077dc407d00
          Found by: stack scanning 
      

      That qMakePair call seems use the QPointer<QObject> introduced in QTBUG-26187 fix, and it seems it is now NULL in some cases, so it crashes.

      I hardly can provide a small sample that reproduces the crash, only the full application, but I believe this can be fixed by simply adding an "if" operator somewhere in QAccessible::updateAccessibility, probably just before this line:

      qAccessibleRecentSentEvents()->insert(eventId, qMakePair(QPointer<QObject>(o), who));
      

      Attachments

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

        Activity

          People

            frederik Frederik Gladhorn
            ov Vitaly Ovchinnikov
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes