Bug 104473 - REGRESSION(r136948): inspector/styles/import-pseudoclass-crash.html hits an assertion
Summary: REGRESSION(r136948): inspector/styles/import-pseudoclass-crash.html hits an a...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Alexander Pavlov (apavlov)
URL:
Keywords:
Depends on:
Blocks: 79668 104225
  Show dependency treegraph
 
Reported: 2012-12-09 02:52 PST by Chris Dumez
Modified: 2012-12-11 06:07 PST (History)
3 users (show)

See Also:


Attachments
Patch (8.11 KB, patch)
2012-12-11 05:50 PST, Alexander Pavlov (apavlov)
vsevik: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Dumez 2012-12-09 02:52:42 PST
After http://trac.webkit.org/changeset/136948, inspector/styles/import-pseudoclass-crash.html hits the following assertion:

crash log for WebKitTestRunner (pid 20597):
STDOUT: <empty>
STDERR: ASSERTION FAILED: m_childRuleCSSOMWrappers.size() == ruleCount
STDERR: /home/buildslave-1/webkit-buildslave/efl-linux-64-debug-wk2/build/Source/WebCore/css/CSSStyleSheet.cpp(228) : WebCore::CSSRule* WebCore::CSSStyleSheet::item(unsigned int)
STDERR: 1   0x7fed0f4f9136 WebCore::CSSStyleSheet::item(unsigned int)
STDERR: 2   0x7fed0f59cde8
STDERR: 3   0x7fed0f593d53
STDERR: 4   0x7fed0f593da5
STDERR: 5   0x7fed0f593f6f WebCore::StyleResolver::ensureFullCSSOMWrapperForInspector(WebCore::StyleRule*)
STDERR: 6   0x7fed0f9f1b5e WebCore::InspectorInstrumentation::willMatchRuleImpl(WebCore::InstrumentingAgents*, WebCore::StyleRule*, WebCore::StyleResolver*)
STDERR: 7   0x7fed0f5a0016 WebCore::InspectorInstrumentation::willMatchRule(WebCore::Document*, WebCore::StyleRule*, WebCore::StyleResolver*)
STDERR: 8   0x7fed0f58d399 WebCore::StyleResolver::collectMatchingRulesForList(WTF::Vector<WebCore::RuleData, 0ul> const*, int&, int&, WebCore::StyleResolver::MatchOptions const&)
STDERR: 9   0x7fed0f58c7e7 WebCore::StyleResolver::collectMatchingRules(WebCore::RuleSet*, int&, int&, WebCore::StyleResolver::MatchOptions const&)
STDERR: 10  0x7fed0f58d294 WebCore::StyleResolver::matchUARules(WebCore::StyleResolver::MatchResult&, WebCore::RuleSet*)
STDERR: 11  0x7fed0f58ed57 WebCore::StyleResolver::matchUARules(WebCore::StyleResolver::MatchResult&)
STDERR: 12  0x7fed0f58ff3e WebCore::StyleResolver::styleForElement(WebCore::Element*, WebCore::RenderStyle*, WebCore::StyleSharingBehavior, WebCore::RuleMatchingBehavior, WebCore::RenderRegion*)
STDERR: 13  0x7fed0f58a60d WebCore::StyleResolver::StyleResolver(WebCore::Document*, bool)
STDERR: 14  0x7fed0f61d3c3 WebCore::Document::createStyleResolver()
STDERR: 15  0x7fed0f519914 WebCore::Document::styleResolver()
STDERR: 16  0x7fed0f67fcb9 WebCore::Element::styleForRenderer()
STDERR: 17  0x7fed0f67fe7c WebCore::Element::recalcStyle(WebCore::Node::StyleChange)
STDERR: 18  0x7fed0f61c41e WebCore::Document::recalcStyle(WebCore::Node::StyleChange)
STDERR: 19  0x7fed0f621045 WebCore::Document::styleResolverChanged(WebCore::StyleResolverUpdateFlag)
STDERR: 20  0x7fed0f61fa75 WebCore::Document::didRemoveAllPendingStylesheet()
STDERR: 21  0x7fed0f673579 WebCore::DocumentStyleSheetCollection::removePendingSheet(WebCore::DocumentStyleSheetCollection::RemovePendingSheetNotificationType)
STDERR: 22  0x7fed0f8623c2 WebCore::HTMLLinkElement::removePendingSheet(WebCore::HTMLLinkElement::RemovePendingSheetNotificationType)
STDERR: 23  0x7fed0f861eb0 WebCore::HTMLLinkElement::sheetLoaded()
STDERR: 24  0x7fed0f5d03ef WebCore::StyleSheetContents::checkLoaded()
STDERR: 25  0x7fed0f5c8dfb WebCore::StyleRuleImport::setCSSStyleSheet(WTF::String const&, WebCore::KURL const&, WTF::String const&, WebCore::CachedCSSStyleSheet const*)
STDERR: 26  0x7fed0f5c9539 WebCore::StyleRuleImport::ImportedStyleSheetClient::setCSSStyleSheet(WTF::String const&, WebCore::KURL const&, WTF::String const&, WebCore::CachedCSSStyleSheet const*)
STDERR: 27  0x7fed0fae6a83 WebCore::CachedCSSStyleSheet::didAddClient(WebCore::CachedResourceClient*)
STDERR: 28  0x7fed0faf0713 WebCore::CachedResource::addClient(WebCore::CachedResourceClient*)
STDERR: 29  0x7fed0f5c927a WebCore::StyleRuleImport::requestStyleSheet()
STDERR: 30  0x7fed0f5cf5e6 WebCore::StyleSheetContents::parserAppendRule(WTF::PassRefPtr<WebCore::StyleRuleBase>)
STDERR: 31  0x7fed10719513 cssyyparse(WebCore::CSSParser*)
STDERR: ASSERTION FAILED: m_connection
STDERR: /home/buildslave-1/webkit-buildslave/efl-linux-64-debug-wk2/build/Source/WebKit2/Shared/ChildProcessProxy.h(52) : CoreIPC::Connection* WebKit::ChildProcessProxy::connection() const
STDERR: 1   0x7f03bf4499b8 WebKit::ChildProcessProxy::connection() const
STDERR: 2   0x7f03bf449595 WebKit::ChildProcessProxy::sendMessage(CoreIPC::MessageID, WTF::PassOwnPtr<CoreIPC::MessageEncoder>, unsigned int)
STDERR: 3   0x7f03bf4a99e5 bool WebKit::ChildProcessProxy::send<Messages::DrawingArea::SuspendPainting>(Messages::DrawingArea::SuspendPainting const&, unsigned long, unsigned int)
STDERR: 4   0x7f03bf4a7b12 WebKit::DrawingAreaProxyImpl::visibilityDidChange()
STDERR: 5   0x7f03bf4fdeec WebKit::WebPageProxy::viewStateDidChange(unsigned int)
STDERR: 6   0x7f03bf6c70bc
STDERR: 7   0x7f03be084132 evas_object_event_callback_call
STDERR: 8   0x7f03be0a2bde evas_object_inform_call_hide
STDERR: 9   0x7f03be0a0765 evas_object_del
STDERR: 10  0x7f03bf6e3745 WebKit::WebInspectorProxy::platformDidClose()
STDERR: 11  0x7f03bf4eaa22 WebKit::WebInspectorProxy::didClose()
STDERR: 12  0x7f03bf4e9e54 WebKit::WebInspectorProxy::invalidate()
STDERR: 13  0x7f03bf50979d WebKit::WebPageProxy::processDidCrash()
STDERR: 14  0x7f03bf542b7c WebKit::WebProcessProxy::didClose(CoreIPC::Connection*)
STDERR: 15  0x7f03bf42805d CoreIPC::Connection::dispatchConnectionDidClose()
STDERR: 16  0x7f03bf433106 WTF::FunctionWrapper<void (CoreIPC::Connection::*)()>::operator()(CoreIPC::Connection*)
STDERR: 17  0x7f03bf432f0c WTF::BoundFunctionImpl<WTF::FunctionWrapper<void (CoreIPC::Connection::*)()>, void (CoreIPC::Connection*)>::operator()()
STDERR: 18  0x7f03c66c1c1e WTF::Function<void ()>::operator()() const
STDERR: 19  0x7f03c2af7b63 WebCore::RunLoop::performWork()
STDERR: 20  0x7f03c3526403 WebCore::RunLoop::wakeUpEvent(void*, void*, unsigned int)
STDERR: 21  0x7f03be820621
STDERR: 22  0x7f03be81f571
STDERR: 23  0x7f03be81fab7 ecore_main_loop_begin
STDERR: 24  0x433ba9 WTR::TestController::platformRunUntil(bool&, double)
STDERR: 25  0x41ecd2 WTR::TestController::runUntil(bool&, WTR::TestController::TimeoutDuration)
STDERR: 26  0x425d8a WTR::TestInvocation::invoke()
STDERR: 27  0x41ea0a WTR::TestController::runTest(char const*)
STDERR: 28  0x41eb43 WTR::TestController::runTestingServerLoop()
STDERR: 29  0x41ebdd WTR::TestController::run()
STDERR: 30  0x41c513 WTR::TestController::TestController(int, char const**)
STDERR: 31  0x433d42 main

cf. http://build.webkit.org/results/EFL%20Linux%2064-bit%20Debug%20WK2/r136948%20%286776%29/inspector/styles/import-pseudoclass-crash-crash-log.txt
Comment 1 Alexander Pavlov (apavlov) 2012-12-09 02:58:48 PST
Antti, any ideas? What could I have done wrong, so that the number of wrappers is not the same as the number of rules for the UA stylesheet? Will investigate this on Monday, but just in case you have a clue...

This is asserting on all of Chromium Debug: http://test-results.appspot.com/dashboards/flakiness_dashboard.html#showExpectations=true&tests=inspector%2Fstyles%2Fimport-pseudoclass-crash.html
Comment 2 Chris Dumez 2012-12-09 03:08:36 PST
Skipped for EFL port in http://trac.webkit.org/changeset/137068
Comment 3 Csaba Osztrogonác 2012-12-11 03:57:19 PST
same assertion on Qt:
crash log for DumpRenderTree (pid 22242):
STDOUT: <empty>
STDERR: ASSERTION FAILED: m_childRuleCSSOMWrappers.size() == ruleCount
STDERR: /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/Source/WebCore/css/CSSStyleSheet.cpp(228) : WebCore::CSSRule* WebCore::CSSStyleSheet::item(unsigned int)
Comment 4 Csaba Osztrogonác 2012-12-11 04:30:56 PST
I skipped the test on Qt - r137290. Please unskip it with the proper fix.
Comment 5 Alexander Pavlov (apavlov) 2012-12-11 05:50:44 PST
Created attachment 178784 [details]
Patch
Comment 6 Alexander Pavlov (apavlov) 2012-12-11 06:07:05 PST
Committed r137303: <http://trac.webkit.org/changeset/137303>