RESOLVED FIXED 71421
REGRESSION(r99025-r99037): platform/mac/accessibility/select-element-selection-with-optgroups.html is asserting
https://bugs.webkit.org/show_bug.cgi?id=71421
Summary REGRESSION(r99025-r99037): platform/mac/accessibility/select-element-selectio...
Simon Fraser (smfr)
Reported 2011-11-02 17:08:13 PDT
ASSERTION FAILED: !(flags & DispatchChangeEvent) /Volumes/Big/slave/snowleopard-intel-debug/build/Source/WebCore/html/HTMLSelectElement.cpp(792) : void WebCore::HTMLSelectElement::selectOption(int, unsigned int) 1 0x101887a53 WebCore::HTMLSelectElement::selectOption(int, unsigned int) 2 0x101887c0e WebCore::HTMLSelectElement::accessKeySetSelectedIndex(int) 3 0x1012315ed WebCore::AccessibilityListBoxOption::setSelected(bool) 4 0x101221578 WebCore::AccessibilityListBox::setSelectedChildren(WTF::Vector<WTF::RefPtr<WebCore::AccessibilityObject>, 0ul>&) 5 0x10125f242 -[WebAccessibilityObjectWrapper accessibilitySetValue:forAttribute:] 6 0x10000614f AccessibilityUIElement::setSelectedChild(AccessibilityUIElement*) const 7 0x100004629 setSelectedChildCallback(OpaqueJSContext const*, OpaqueJSValue*, OpaqueJSValue*, unsigned long, OpaqueJSValue const* const*, OpaqueJSValue const**) 8 0x1002d1537 JSC::JSCallbackFunction::call(JSC::ExecState*) 9 0x1002b9ec8 cti_op_call_NotJSFunction 10 0x1002b25e5 jscGeneratedNativeCode 11 0x100290b48 JSC::JITCode::execute(JSC::RegisterFile*, JSC::ExecState*, JSC::JSGlobalData*) 12 0x10028c4c3 JSC::Interpreter::execute(JSC::ProgramExecutable*, JSC::ExecState*, JSC::ScopeChainNode*, JSC::JSObject*) 13 0x1002253e9 JSC::evaluate(JSC::ExecState*, JSC::ScopeChainNode*, JSC::SourceCode const&, JSC::JSValue, JSC::JSValue*) 14 0x1022a4504 WebCore::JSMainThreadExecState::evaluate(JSC::ExecState*, JSC::ScopeChainNode*, JSC::SourceCode const&, JSC::JSValue, JSC::JSValue*) 15 0x1020908dc WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&, WebCore::DOMWrapperWorld*) 16 0x102090b37 WebCore::ScriptController::evaluate(WebCore::ScriptSourceCode const&) 17 0x10209f954 WebCore::ScriptElement::executeScript(WebCore::ScriptSourceCode const&) 18 0x1020a04b8 WebCore::ScriptElement::prepareScript(WTF::TextPosition const&, WebCore::ScriptElement::LegacyTypeSupport) 19 0x101884470 WebCore::HTMLScriptRunner::runScript(WebCore::Element*, WTF::TextPosition const&) 20 0x101884f97 WebCore::HTMLScriptRunner::execute(WTF::PassRefPtr<WebCore::Element>, WTF::TextPosition const&) 21 0x101829ce8 WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder() 22 0x101829d96 WebCore::HTMLDocumentParser::canTakeNextToken(WebCore::HTMLDocumentParser::SynchronousMode, WebCore::PumpSession&) 23 0x10182ac61 WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode) 24 0x10182af4d WebCore::HTMLDocumentParser::pumpTokenizerIfPossible(WebCore::HTMLDocumentParser::SynchronousMode) 25 0x10182b4ab WebCore::HTMLDocumentParser::append(WebCore::SegmentedString const&) 26 0x1015656d4 WebCore::DecodedDataDocumentParser::appendBytes(WebCore::DocumentWriter*, char const*, unsigned long) 27 0x1015d12a2 WebCore::DocumentWriter::addData(char const*, unsigned long) 28 0x1015ba8a7 WebCore::DocumentLoader::commitData(char const*, unsigned long) 29 0x100cacddd -[WebFrame(WebInternal) _commitData:] 30 0x100cd7548 -[WebHTMLRepresentation receivedData:withDataSource:] 31 0x100c9382c -[WebDataSource(WebInternal) _receivedData:]
Attachments
patch (2.57 KB, patch)
2011-11-07 18:11 PST, chris fleizach
rniwa: review+
Ryosuke Niwa
Comment 1 2011-11-06 12:54:34 PST
Ryosuke Niwa
Comment 2 2011-11-06 13:01:25 PST
Added a crash expectation in http://trac.webkit.org/changeset/99380 (debug only) for now.
chris fleizach
Comment 3 2011-11-06 22:43:12 PST
(In reply to comment #1) > Maybe caused by http://trac.webkit.org/changeset/99035/ ? This assert was added in this patch as far as I can tell if (!usesMenuList()) 792 ASSERT(!(flags & DispatchChangeEvent)); Darin, can you take a look at this? It's likely this is the code path that VoiceOver will use whenever selecting elements within a <select>
Darin Adler
Comment 4 2011-11-07 11:24:30 PST
The code previously had a comment saying this would never happen. I changed that to an assertion. We can just remove the assertion to restore the old behavior.
Darin Adler
Comment 5 2011-11-07 11:25:26 PST
I have no time for this right now; worth investigating further later. But for now, just turning off the ASSERT is smart.
chris fleizach
Comment 6 2011-11-07 15:01:44 PST
will upload a patch
chris fleizach
Comment 7 2011-11-07 18:11:39 PST
chris fleizach
Comment 8 2011-11-07 18:26:14 PST
Note You need to log in before you can comment on or make changes to this bug.