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

[REG 6.4->6.5] Accessibility crash when clicking on a link in a list on macOS

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • 6.5.2, 6.6.0 FF
    • 6.5.0, 6.5.1
    • WebEngine
    • None
    • macOS
    • 83dbd2e48 (dev), ccc2693bd (6.5), ea0682573 (dev), 5163615d6 (6.6), 4b564a587 (6.5)

    Description

      Steps to reproduce:

      1. open link-list-test.html or https://webrtc.github.io/samples/ in simplebrowser
      2. click on a link from the list
      3. observe crash or assert:
      ASSERT: "table" in file /Users/stampho/work/Qt/qt6-dev-src/qtbase/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm, line 128
      Received signal 6
      0   libQt6WebEngineCore_debug.6.6.0.dyl 0x000000028cdcbda0 base::debug::CollectStackTrace(void**, unsigned long) + 48
      1   libQt6WebEngineCore_debug.6.6.0.dyl 0x000000028cae8984 base::debug::StackTrace::StackTrace(unsigned long) + 92
      2   libQt6WebEngineCore_debug.6.6.0.dyl 0x000000028cae8a1c base::debug::StackTrace::StackTrace(unsigned long) + 36
      3   libQt6WebEngineCore_debug.6.6.0.dyl 0x000000028cae89e8 base::debug::StackTrace::StackTrace() + 40
      4   libQt6WebEngineCore_debug.6.6.0.dyl 0x000000028cdcbc00 base::debug::(anonymous namespace)::StackDumpSignalHandler(int, __siginfo*, void*) + 1420
      5   libsystem_platform.dylib            0x00000001830caa84 _sigtramp + 56
      6   libsystem_pthread.dylib             0x000000018309bc28 pthread_kill + 288
      7   libsystem_c.dylib                   0x0000000182fa9ae8 abort + 180
      8   libQt6Core_debug.6.6.0.dylib        0x0000000108a7057c QInternal::registerCallback(QInternal::Callback, bool (*)(void**)) + 0
      9   libQt6Core_debug.6.6.0.dylib        0x0000000108a7ba48 QMessageLogger::info(char const*, ...) const + 0
      10  libQt6Core_debug.6.6.0.dylib        0x000000010909dd30 QMessageLogger::fatal(char const*, ...) const + 128
      11  libQt6Core_debug.6.6.0.dylib        0x000000010909d180 qt_assert(char const*, char const*, int) + 96
      12  libqcocoa_debug.dylib               0x000000010553027c -[QMacAccessibilityElement initWithId:role:] + 444
      13  libqcocoa_debug.dylib               0x00000001055300b4 -[QMacAccessibilityElement initWithId:] + 44
      14  libqcocoa_debug.dylib               0x0000000105530538 +[QMacAccessibilityElement elementWithId:] + 216
      15  libqcocoa_debug.dylib               0x00000001055305ec +[QMacAccessibilityElement elementWithInterface:] + 128
      16  libqcocoa_debug.dylib               0x0000000105531a24 -[QMacAccessibilityElement accessibilityParent] + 744
      17  libqcocoa_debug.dylib               0x0000000105531560 -[QMacAccessibilityElement accessibilityWindow] + 32
      18  libqcocoa_debug.dylib               0x0000000105531568 -[QMacAccessibilityElement accessibilityWindow] + 40
      19  AppKit                              0x00000001864186dc -[NSAccessibilityAttributeAccessorInfo getAttributeValue:forObject:] + 60
      20  AppKit                              0x00000001868e9030 ___NSAccessibilityEntryPointValueForAttribute_block_invoke.748 + 1504
      21  AppKit                              0x00000001868e4bb4 NSAccessibilityPerformEntryPointObject + 44
      22  AppKit                              0x00000001865ef044 _NSAccessibilityEntryPointValueForAttribute + 224
      23  AppKit                              0x00000001866e42dc -[NSObject(NSAccessibilityInternal) _accessibilityValueForAttribute:clientError:] + 272
      24  AppKit                              0x00000001866e9d60 CopyAppKitUIElementAttributeValueNoCatch + 92
      25  AppKit                              0x00000001866e6974 CopyAttributeValue + 168
      26  HIServices                          0x0000000188908a10 _AXXMIGCopyAttributeValue + 444
      27  HIServices                          0x000000018892ef08 _XCopyAttributeValue + 436
      28  HIServices                          0x00000001888e852c mshMIGPerform + 204
      29  CoreFoundation                      0x000000018317aca0 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 60
      30  CoreFoundation                      0x000000018317abc0 __CFRunLoopDoSource1 + 520
      31  CoreFoundation                      0x00000001831795a0 __CFRunLoopRun + 2240
      32  CoreFoundation                      0x000000018317858c CFRunLoopRunSpecific + 612
      33  HIToolbox                           0x000000018c9addf4 RunCurrentEventLoopInMode + 292
      34  HIToolbox                           0x000000018c9adc30 ReceiveNextEventCommon + 648
      35  HIToolbox                           0x000000018c9ad988 _BlockUntilNextEventMatchingListInModeWithFilter + 76
      36  AppKit                              0x0000000186397f58 _DPSNextEvent + 636
      37  AppKit                              0x00000001863970f4 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 716
      38  AppKit                              0x000000018638b558 -[NSApplication run] + 464
      39  libqcocoa_debug.dylib               0x0000000105462e20 QCocoaEventDispatcher::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 956
      40  libQt6Core_debug.6.6.0.dylib        0x0000000108b66574 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 128
      41  libQt6Core_debug.6.6.0.dylib        0x0000000108b66780 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 488
      42  libQt6Core_debug.6.6.0.dylib        0x0000000108b4d688 QCoreApplication::exec() + 376
      43  libQt6Gui_debug.6.6.0.dylib         0x000000010ab92b18 QGuiApplication::exec() + 20
      44  libQt6Widgets_debug.6.6.0.dylib     0x0000000107376c5c QApplication::exec() + 12
      45  simplebrowser                       0x00000001006f7840 main + 464
      46  dyld                                0x0000000182d43f28 start + 2236
      

      This change expects QAccessibleTableCellInterface::table() to never return null: https://codereview.qt-project.org/c/qt/qtbase/+/471252

      Attachments

        1. link-list-test.html
          0.1 kB
          Peter Varga

        Issue Links

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

          Activity

            People

              pvarga Peter Varga
              pvarga Peter Varga
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes