Bug 53062

Summary: Leaking CSSRuleDataList objects
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: CSSAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: koivisto, simon.fraser
Priority: P1 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: OS X 10.5   
Attachments:
Description Flags
Leaks log
none
Patch mitz: review+

Description Simon Fraser (smfr) 2011-01-24 21:50:19 PST
Created attachment 80017 [details]
Leaks log

Running 'run-webkit-tests --debug --leaks LayoutTests/fast/css' shows some leaks of CSSRuleDataList objects.

On SnowLeopard, at r76568.

Massaged leaks output attached. Sample stack is:


	| WebCore::JSNode::appendChild(JSC::ExecState*)
	| WebCore::Node::appendChild(WTF::PassRefPtr<WebCore::Node>, int&, bool)
	| WebCore::ContainerNode::appendChild(WTF::PassRefPtr<WebCore::Node>, int&, bool)
	| WebCore::notifyChildInserted(WebCore::Node*)
	| WebCore::HTMLStyleElement::insertedIntoDocument()
	| WebCore::StyleElement::insertedIntoDocument(WebCore::Document*, WebCore::Element*)
	| WebCore::StyleElement::process(WebCore::Element*)
	| WebCore::StyleElement::createSheet(WebCore::Element*, int, WTF::String const&)
	| WebCore::CSSStyleSheet::checkLoaded()
	| WebCore::HTMLStyleElement::sheetLoaded()
	| WebCore::StyleElement::sheetLoaded(WebCore::Document*)
	| WebCore::Document::removePendingSheet()
	| WebCore::Document::styleSelectorChanged(WebCore::StyleSelectorUpdateFlag)
	| WebCore::Document::recalcStyle(WebCore::Node::StyleChange)
	| WebCore::Element::recalcStyle(WebCore::Node::StyleChange)
	| WebCore::Document::styleSelector()
	| WebCore::Document::createStyleSelector()
	| WebCore::CSSStyleSelector::CSSStyleSelector(WebCore::Document*, WebCore::StyleSheetList*, WebCore::CSSStyleSheet*, WebCore::CSSStyleSheet*, WTF::Vector<WTF::RefPtr<WebCore::CSSStyleSheet>, 0ul> const*, bool, bool)
	| WebCore::CSSRuleSet::addRulesFromSheet(WebCore::CSSStyleSheet*, WebCore::MediaQueryEvaluator const&, WebCore::CSSStyleSelector*)
	| WebCore::CSSRuleSet::addStyleRule(WebCore::CSSStyleRule*)
	| WebCore::CSSRuleSet::addRule(WebCore::CSSStyleRule*, WebCore::CSSSelector*)
	| WebCore::CSSRuleSet::addToRuleSet(WTF::AtomicStringImpl*, WTF::HashMap<WTF::AtomicStringImpl*, WebCore::CSSRuleDataList*, WTF::PtrHash<WTF::AtomicStringImpl*>, WTF::HashTraits<WTF::AtomicStringImpl*>, WTF::HashTraits<WebCore::CSSRuleDataList*> >&, WebCore::CSSStyleRule*, WebCore::CSSSelector*)
	| WebCore::CSSRuleDataList::CSSRuleDataList(unsigned int, WebCore::CSSStyleRule*, WebCore::CSSSelector*)
	| WTF::fastMalloc(unsigned long)
Comment 1 Simon Fraser (smfr) 2011-01-24 21:50:59 PST
<rdar://problem/8911607>
Comment 2 Simon Fraser (smfr) 2011-01-24 22:01:58 PST
Created attachment 80021 [details]
Patch
Comment 3 Simon Fraser (smfr) 2011-01-24 22:09:37 PST
http://trac.webkit.org/changeset/76573