Bug 172281 - [ATK] Test accessibility/insert-children-assert.html is crashing since added in r216980
Summary: [ATK] Test accessibility/insert-children-assert.html is crashing since added ...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2017-05-18 03:43 PDT by Miguel Gomez
Modified: 2019-04-10 00:59 PDT (History)
13 users (show)

See Also:


Attachments
Patch (4.61 KB, patch)
2019-04-09 01:59 PDT, Carlos Garcia Campos
jdiggs: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Miguel Gomez 2017-05-18 03:43:20 PDT
Test accessibility/insert-children-assert.html is crashing since added in r216980
Comment 1 Ms2ger (he/him; ⌚ UTC+1/+2) 2018-01-24 01:44:04 PST
Backtrace:

STDERR: ASSERTION FAILED: lastChildRenderer->node()
STDERR: /Source/WebCore/accessibility/AccessibilityRenderObject.cpp(644) : virtual WTF::String WebCore::AccessibilityRenderObject::textUnderElement(WebCore::AccessibilityTextUnderElementMode) const
STDERR: 1   0x7f20190684ab /WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(WTFCrash+0x1e) [0x7f20190684ab]
STDERR: 2   0x7f2026b7b2e9 /WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebCore::AccessibilityRenderObject::textUnderElement(WebCore::AccessibilityTextUnderElementMode) const+0x301) [0x7f2026b7b2e9]
STDERR: 3   0x7f2026bc9fd1 /WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(+0x93c8fd1) [0x7f2026bc9fd1]
STDERR: 4   0x7f1fc5a23a07 /WebKitBuild/Debug/lib/libTestRunnerInjectedBundle.so(WTR::AccessibilityUIElement::stringValue()+0xef) [0x7f1fc5a23a07]
STDERR: 5   0x7f1fc5a0a42e /WebKitBuild/Debug/lib/libTestRunnerInjectedBundle.so(WTR::JSAccessibilityUIElement::stringValue(OpaqueJSContext const*, OpaqueJSValue*, OpaqueJSString*, OpaqueJSValue const**)+0x6a) [0x7f1fc5a0a42e]
STDERR: 6   0x7f2017f13280 /WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(JSC::JSCallbackObject<JSC::JSDestructibleObject>::getStaticValue(JSC::ExecState*, JSC::PropertyName)+0x1c2) [0x7f2017f13280]
STDERR: 7   0x7f2017f0acf2 /WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(JSC::JSCallbackObject<JSC::JSDestructibleObject>::getOwnPropertySlot(JSC::JSObject*, JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&)+0x498) [0x7f2017f0acf2]
STDERR: 8   0x7f2025904798 /WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(JSC::JSObject::getNonIndexPropertySlot(JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&)+0x1c6) [0x7f2025904798]
STDERR: 9   0x7f2025903ea4 /WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(JSC::JSObject::getPropertySlot(JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&)+0xd8) [0x7f2025903ea4]
STDERR: 10  0x7f20185bf387 /WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(JSC::JSValue::getPropertySlot(JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&) const+0x1e9) [0x7f20185bf387]
STDERR: 11  0x7f20185bf0e2 /WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(JSC::JSValue::get(JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&) const+0xac) [0x7f20185bf0e2]
STDERR: 12  0x7f2018ab7b36 /WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x27fcb36) [0x7f2018ab7b36]
STDERR: 13  0x7f2018aae742 /WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x27f3742) [0x7f2018aae742]
STDERR: LEAK: 1 WebPageProxy
Comment 2 Radar WebKit Bug Importer 2018-01-30 09:10:19 PST
<rdar://problem/37030990>
Comment 3 Carlos Garcia Campos 2019-04-09 01:28:24 PDT
The crash happens because at some point the test tries to get the anonymous block text getting the RenderText as first child and RenderFullScreen as last child and the latter doesn't have a node. This is because in atk we do thing differently, we don't include the static text elements individually, and parent element uses textUnderElement() to get all the pieces together. I think we could just turn the asserts into actual null checks. That won't fix the test (because it expects the mac behavior of having static text nodes in the tree), but at least it won't crash.
Comment 4 Carlos Garcia Campos 2019-04-09 01:59:36 PDT
Created attachment 367036 [details]
Patch
Comment 5 Carlos Garcia Campos 2019-04-10 00:59:20 PDT
Committed r244105: <https://trac.webkit.org/changeset/244105>