Bug 180280

Summary: Many CSSOM leaks on fast/dom/non-numeric-values-numeric-parameters.html
Product: WebKit Reporter: Alexey Proskuryakov <ap>
Component: CSSAssignee: Tadeu Zagallo <tzagallo>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, commit-queue, ews-watchlist, ggaren, joepeck, koivisto, rniwa, simon.fraser, tzagallo, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: Safari 9   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Archive of layout-test-results from ews101 for mac-sierra
none
Archive of layout-test-results from ews107 for mac-sierra-wk2
none
Archive of layout-test-results from ews123 for ios-simulator-wk2
none
Archive of layout-test-results from ews114 for mac-sierra
none
Archive of layout-test-results from ews206 for win-future
none
Patch
none
Patch none

Description Alexey Proskuryakov 2017-12-01 13:58:54 PST
fast/dom/non-numeric-values-numeric-parameters.html leaks a variety of CSSOM objects.

Steps to reproduce:

run-webkit-tests --leaks -1 --no-sample --no-retry --debug-rwt-logging fast/dom/non-numeric-values-numeric-parameters.html --no-build --repeat 10

Here are all the leak traces, truncated for readability:

WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValue(JSC::ExecState*) JSCSSStyleDeclaration.cpp:557 | long long WebCore::IDLOperation<WebCore::JSCSSStyleDeclaration>::call<&(WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53 | WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&) JSCSSStyleDeclaration.cpp:552 | WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue(WTF::String const&) PropertySetCSSStyleDeclaration.cpp:185 | WebCore::PropertySetCSSStyleDeclaration::wrapForDeprecatedCSSOM(WebCore::CSSValue*) PropertySetCSSStyleDeclaration.cpp:323 | WebCore::CSSValue::createDeprecatedCSSOMWrapper(WebCore::CSSStyleDeclaration&) const CSSValue.cpp:469 | WebCore::DeprecatedCSSOMValueList::create(WebCore::CSSValueList const&, WebCore::CSSStyleDeclaration&) DeprecatedCSSOMValueList.h:37 | WebCore::DeprecatedCSSOMValueList::DeprecatedCSSOMValueList(WebCore::CSSValueList const&, WebCore::CSSStyleDeclaration&) DeprecatedCSSOMValueList.h:56 | WebCore::DeprecatedCSSOMValueList::DeprecatedCSSOMValueList(WebCore::CSSValueList const&, WebCore::CSSStyleDeclaration&) DeprecatedCSSOMValueList.h:55 | WebCore::CSSValue::createDeprecatedCSSOMWrapper(WebCore::CSSStyleDeclaration&) const CSSValue.cpp:467 | WebCore::DeprecatedCSSOMPrimitiveValue::create(WebCore::CSSPrimitiveValue const&, WebCore::CSSStyleDeclaration&) DeprecatedCSSOMPrimitiveValue.h:75 | WTF::RefCounted<WebCore::DeprecatedCSSOMValue>::operator new(unsigned long) RefCounted.h:140 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValue(JSC::ExecState*) JSCSSStyleDeclaration.cpp:557 | long long WebCore::IDLOperation<WebCore::JSCSSStyleDeclaration>::call<&(WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53 | WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&) JSCSSStyleDeclaration.cpp:552 | WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue(WTF::String const&) PropertySetCSSStyleDeclaration.cpp:185 | WebCore::PropertySetCSSStyleDeclaration::wrapForDeprecatedCSSOM(WebCore::CSSValue*) memory:3006 | WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::operator new(unsigned long) HashMap.h:37 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValue(JSC::ExecState*) JSCSSStyleDeclaration.cpp:557 | long long WebCore::IDLOperation<WebCore::JSCSSStyleDeclaration>::call<&(WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53 | WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&) JSCSSStyleDeclaration.cpp:552 | WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue(WTF::String const&) PropertySetCSSStyleDeclaration.cpp:185 | WebCore::PropertySetCSSStyleDeclaration::wrapForDeprecatedCSSOM(WebCore::CSSValue*) memory:3006 | WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::HashMap() HashMap.h:82 | WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::HashMap() HashMap.h:82 | WTF::HashTable<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> >::HashTable() HashTable.h:559 | WTF::HashTable<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> >::HashTable() memory:3006 | WTF::Lock::operator new(unsigned long) Lock.h:140 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsNodePrototypeFunctionAppendChild(JSC::ExecState*) JSNode.cpp:851 | long long WebCore::IDLOperation<WebCore::JSNode>::call<&(WebCore::jsNodePrototypeFunctionAppendChildBody(JSC::ExecState*, WebCore::JSNode*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53 | WebCore::jsNodePrototypeFunctionAppendChildBody(JSC::ExecState*, WebCore::JSNode*, JSC::ThrowScope&) JSNode.cpp:845 | WebCore::Node::appendChild(WebCore::Node&) Node.cpp:434 | WebCore::ContainerNode::appendChild(WebCore::Node&) ContainerNode.cpp:672 | WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&) ContainerNode.cpp:696 | void WebCore::executeNodeInsertionWithScriptAssertion<WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&)::$_4>(WebCore::ContainerNode&, WebCore::Node&, WebCore::ContainerNode::ChildChangeSource, WebCore::ReplacedAllChildren, WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&)::$_4) ContainerNode.cpp:183 | WebCore::notifyChildNodeInserted(WebCore::ContainerNode&, WebCore::Node&) ContainerNodeAlgorithms.cpp:99 | WebCore::notifyNodeInsertedIntoDocument(WebCore::ContainerNode&, WebCore::Node&, WebCore::TreeScopeChange, WTF::Vector<WTF::Ref<WebCore::Node>, 11ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&) ContainerNodeAlgorithms.cpp:44 | WebCore::HTMLStyleElement::insertedIntoAncestor(WebCore::Node::InsertionType, WebCore::ContainerNode&) HTMLStyleElement.cpp:104 | WebCore::InlineStyleSheetOwner::insertedIntoDocument(WebCore::Element&) InlineStyleSheetOwner.cpp:93 | WebCore::InlineStyleSheetOwner::createSheetFromTextContents(WebCore::Element&) InlineStyleSheetOwner.cpp:134 | WebCore::InlineStyleSheetOwner::createSheet(WebCore::Element&, WTF::String const&) InlineStyleSheetOwner.cpp:207 | WebCore::StyleSheetContents::parseString(WTF::String const&) StyleSheetContents.cpp:357 | WebCore::CSSParser::parseSheet(WebCore::StyleSheetContents*, WTF::String const&, WebCore::CSSParser::RuleParsing) CSSParser.cpp:126 | WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing) CSSParserImpl.cpp:245 | bool WebCore::CSSParserImpl::consumeRuleList<WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing)::$_2>(WebCore::CSSParserTokenRange, WebCore::CSSParserImpl::RuleListType, WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing)::$_2) CSSParserImpl.cpp:387 | WebCore::CSSParserImpl::consumeQualifiedRule(WebCore::CSSParserTokenRange&, WebCore::CSSParserImpl::AllowedRulesType) CSSParserImpl.cpp:473 | WebCore::CSSParserImpl::consumeStyleRule(WebCore::CSSParserTokenRange, WebCore::CSSParserTokenRange) CSSParserImpl.cpp:747 | WebCore::CSSParserImpl::consumeDeclarationList(WebCore::CSSParserTokenRange, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:780 | WebCore::CSSParserImpl::consumeDeclaration(WebCore::CSSParserTokenRange, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:842 | WebCore::CSSParserImpl::consumeDeclarationValue(WebCore::CSSParserTokenRange, WebCore::CSSPropertyID, bool, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:858 | WebCore::CSSPropertyParser::parseValue(WebCore::CSSPropertyID, bool, WebCore::CSSParserTokenRange const&, WebCore::CSSParserContext const&, WTF::Vector<WebCore::CSSProperty, 256ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&, WebCore::StyleRuleBase::Type) CSSPropertyParser.cpp:267 | WebCore::CSSPropertyParser::parseValueStart(WebCore::CSSPropertyID, bool) CSSPropertyParser.cpp:0 | WebCore::CSSPropertyParser::parseSingleValue(WebCore::CSSPropertyID, WebCore::CSSPropertyID) CSSPropertyParser.cpp:3831 | WebCore::consumeFontFamily(WebCore::CSSParserTokenRange&) CSSPropertyParser.cpp:1041 | WebCore::CSSValueList::createCommaSeparated() CSSValueList.h:40 | WTF::RefCounted<WebCore::CSSValue>::operator new(unsigned long) RefCounted.h:140 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValue(JSC::ExecState*) JSCSSStyleDeclaration.cpp:557 | long long WebCore::IDLOperation<WebCore::JSCSSStyleDeclaration>::call<&(WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53 | WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&) JSCSSStyleDeclaration.cpp:552 | WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue(WTF::String const&) PropertySetCSSStyleDeclaration.cpp:185 | WebCore::PropertySetCSSStyleDeclaration::wrapForDeprecatedCSSOM(WebCore::CSSValue*) PropertySetCSSStyleDeclaration.cpp:321 | WTF::HashTableAddResult<WTF::HashTableIterator<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> > > WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::add<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >(WebCore::CSSValue* const&, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>&&) HashMap.h:381 | WTF::HashTableAddResult<WTF::HashTableIterator<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> > > WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::inlineAdd<WebCore::CSSValue* const&, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >(WebCore::CSSValue* const&&&, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>&&) HashMap.h:346 | WTF::HashTableAddResult<WTF::HashTableIterator<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> > > WTF::HashTable<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> >::add<WTF::HashMapTranslator<WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::PtrHash<WebCore::CSSValue*> >, WebCore::CSSValue* const&, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >(WebCore::CSSValue* const&&&, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>&&) HashTable.h:869 | WTF::HashTable<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> >::expand(WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >*) HashTable.h:1173 | WTF::HashTable<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> >::rehash(unsigned int, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >*) HashTable.h:1196 | WTF::HashTable<WebCore::CSSValue*, WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashMap<WebCore::CSSValue*, WTF::RefPtr<WebCore::DeprecatedCSSOMValue>, WTF::PtrHash<WebCore::CSSValue*>, WTF::HashTraits<WebCore::CSSValue*>, WTF::HashTraits<WTF::RefPtr<WebCore::DeprecatedCSSOMValue> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::CSSValue*> >::allocateTable(unsigned int) HashTable.h:1145 | WTF::fastZeroedMalloc(unsigned long) FastMalloc.cpp:80 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsCSSStyleRuleStyle(JSC::ExecState*, long long, JSC::PropertyName) JSCSSStyleRule.cpp:207 | long long WebCore::IDLAttribute<WebCore::JSCSSStyleRule>::get<&(WebCore::jsCSSStyleRuleStyleGetter(JSC::ExecState&, WebCore::JSCSSStyleRule&, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)3>(JSC::ExecState&, long long, char const*) JSDOMAttribute.h:69 | WebCore::jsCSSStyleRuleStyleGetter(JSC::ExecState&, WebCore::JSCSSStyleRule&, JSC::ThrowScope&) JSCSSStyleRule.cpp:201 | WebCore::CSSStyleRule::style() CSSStyleRule.cpp:63 | WebCore::StyleRuleCSSStyleDeclaration::create(WebCore::MutableStyleProperties&, WebCore::CSSRule&) PropertySetCSSStyleDeclaration.h:94 | WebCore::CSSStyleDeclaration::operator new(unsigned long) CSSStyleDeclaration.h:42 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsCSSStyleRuleStyle(JSC::ExecState*, long long, JSC::PropertyName) JSCSSStyleRule.cpp:207 | long long WebCore::IDLAttribute<WebCore::JSCSSStyleRule>::get<&(WebCore::jsCSSStyleRuleStyleGetter(JSC::ExecState&, WebCore::JSCSSStyleRule&, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)3>(JSC::ExecState&, long long, char const*) JSDOMAttribute.h:69 | WebCore::jsCSSStyleRuleStyleGetter(JSC::ExecState&, WebCore::JSCSSStyleRule&, JSC::ThrowScope&) JSCSSStyleRule.cpp:201 | WebCore::CSSStyleRule::style() CSSStyleRule.cpp:63 | WebCore::StyleRule::mutableProperties() StyleRule.cpp:209 | WebCore::StyleProperties::mutableCopy() const StyleProperties.cpp:1320 | WTF::RefCounted<WebCore::StylePropertiesBase>::operator new(unsigned long) RefCounted.h:140 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValue(JSC::ExecState*) JSCSSStyleDeclaration.cpp:557 | long long WebCore::IDLOperation<WebCore::JSCSSStyleDeclaration>::call<&(WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53 | WebCore::jsCSSStyleDeclarationPrototypeFunctionGetPropertyCSSValueBody(JSC::ExecState*, WebCore::JSCSSStyleDeclaration*, JSC::ThrowScope&) JSCSSStyleDeclaration.cpp:552 | WebCore::PropertySetCSSStyleDeclaration::getPropertyCSSValue(WTF::String const&) PropertySetCSSStyleDeclaration.cpp:185 | WebCore::PropertySetCSSStyleDeclaration::wrapForDeprecatedCSSOM(WebCore::CSSValue*) PropertySetCSSStyleDeclaration.cpp:323 | WebCore::CSSValue::createDeprecatedCSSOMWrapper(WebCore::CSSStyleDeclaration&) const CSSValue.cpp:469 | WebCore::DeprecatedCSSOMValueList::create(WebCore::CSSValueList const&, WebCore::CSSStyleDeclaration&) DeprecatedCSSOMValueList.h:37 | WTF::RefCounted<WebCore::DeprecatedCSSOMValue>::operator new(unsigned long) RefCounted.h:140 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsNodePrototypeFunctionAppendChild(JSC::ExecState*) JSNode.cpp:851 | long long WebCore::IDLOperation<WebCore::JSNode>::call<&(WebCore::jsNodePrototypeFunctionAppendChildBody(JSC::ExecState*, WebCore::JSNode*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53 | WebCore::jsNodePrototypeFunctionAppendChildBody(JSC::ExecState*, WebCore::JSNode*, JSC::ThrowScope&) JSNode.cpp:845 | WebCore::Node::appendChild(WebCore::Node&) Node.cpp:434 | WebCore::ContainerNode::appendChild(WebCore::Node&) ContainerNode.cpp:672 | WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&) ContainerNode.cpp:696 | void WebCore::executeNodeInsertionWithScriptAssertion<WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&)::$_4>(WebCore::ContainerNode&, WebCore::Node&, WebCore::ContainerNode::ChildChangeSource, WebCore::ReplacedAllChildren, WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&)::$_4) ContainerNode.cpp:183 | WebCore::notifyChildNodeInserted(WebCore::ContainerNode&, WebCore::Node&) ContainerNodeAlgorithms.cpp:99 | WebCore::notifyNodeInsertedIntoDocument(WebCore::ContainerNode&, WebCore::Node&, WebCore::TreeScopeChange, WTF::Vector<WTF::Ref<WebCore::Node>, 11ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&) ContainerNodeAlgorithms.cpp:44 | WebCore::HTMLStyleElement::insertedIntoAncestor(WebCore::Node::InsertionType, WebCore::ContainerNode&) HTMLStyleElement.cpp:104 | WebCore::InlineStyleSheetOwner::insertedIntoDocument(WebCore::Element&) InlineStyleSheetOwner.cpp:93 | WebCore::InlineStyleSheetOwner::createSheetFromTextContents(WebCore::Element&) InlineStyleSheetOwner.cpp:134 | WebCore::InlineStyleSheetOwner::createSheet(WebCore::Element&, WTF::String const&) InlineStyleSheetOwner.cpp:207 | WebCore::StyleSheetContents::parseString(WTF::String const&) StyleSheetContents.cpp:357 | WebCore::CSSParser::parseSheet(WebCore::StyleSheetContents*, WTF::String const&, WebCore::CSSParser::RuleParsing) CSSParser.cpp:126 | WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing) CSSParserImpl.cpp:245 | bool WebCore::CSSParserImpl::consumeRuleList<WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing)::$_2>(WebCore::CSSParserTokenRange, WebCore::CSSParserImpl::RuleListType, WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing)::$_2) CSSParserImpl.cpp:387 | WebCore::CSSParserImpl::consumeQualifiedRule(WebCore::CSSParserTokenRange&, WebCore::CSSParserImpl::AllowedRulesType) CSSParserImpl.cpp:473 | WebCore::CSSParserImpl::consumeStyleRule(WebCore::CSSParserTokenRange, WebCore::CSSParserTokenRange) CSSParserImpl.cpp:747 | WebCore::CSSParserImpl::consumeDeclarationList(WebCore::CSSParserTokenRange, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:780 | WebCore::CSSParserImpl::consumeDeclaration(WebCore::CSSParserTokenRange, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:842 | WebCore::CSSParserImpl::consumeDeclarationValue(WebCore::CSSParserTokenRange, WebCore::CSSPropertyID, bool, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:858 | WebCore::CSSPropertyParser::parseValue(WebCore::CSSPropertyID, bool, WebCore::CSSParserTokenRange const&, WebCore::CSSParserContext const&, WTF::Vector<WebCore::CSSProperty, 256ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&, WebCore::StyleRuleBase::Type) CSSPropertyParser.cpp:267 | WebCore::CSSPropertyParser::parseValueStart(WebCore::CSSPropertyID, bool) CSSPropertyParser.cpp:0 | WebCore::CSSPropertyParser::parseSingleValue(WebCore::CSSPropertyID, WebCore::CSSPropertyID) CSSPropertyParser.cpp:3831 | WebCore::consumeFontFamily(WebCore::CSSParserTokenRange&) CSSPropertyParser.cpp:1041 | WebCore::CSSValueList::createCommaSeparated() CSSValueList.h:40 | WTF::RefCounted<WebCore::CSSValue>::operator new(unsigned long) RefCounted.h:140 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258

WebCore::jsNodePrototypeFunctionAppendChild(JSC::ExecState*) JSNode.cpp:851 | long long WebCore::IDLOperation<WebCore::JSNode>::call<&(WebCore::jsNodePrototypeFunctionAppendChildBody(JSC::ExecState*, WebCore::JSNode*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53 | WebCore::jsNodePrototypeFunctionAppendChildBody(JSC::ExecState*, WebCore::JSNode*, JSC::ThrowScope&) JSNode.cpp:845 | WebCore::Node::appendChild(WebCore::Node&) Node.cpp:434 | WebCore::ContainerNode::appendChild(WebCore::Node&) ContainerNode.cpp:672 | WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&) ContainerNode.cpp:696 | void WebCore::executeNodeInsertionWithScriptAssertion<WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&)::$_4>(WebCore::ContainerNode&, WebCore::Node&, WebCore::ContainerNode::ChildChangeSource, WebCore::ReplacedAllChildren, WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&)::$_4) ContainerNode.cpp:183 | WebCore::notifyChildNodeInserted(WebCore::ContainerNode&, WebCore::Node&) ContainerNodeAlgorithms.cpp:99 | WebCore::notifyNodeInsertedIntoDocument(WebCore::ContainerNode&, WebCore::Node&, WebCore::TreeScopeChange, WTF::Vector<WTF::Ref<WebCore::Node>, 11ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&) ContainerNodeAlgorithms.cpp:44 | WebCore::HTMLStyleElement::insertedIntoAncestor(WebCore::Node::InsertionType, WebCore::ContainerNode&) HTMLStyleElement.cpp:104 | WebCore::InlineStyleSheetOwner::insertedIntoDocument(WebCore::Element&) InlineStyleSheetOwner.cpp:93 | WebCore::InlineStyleSheetOwner::createSheetFromTextContents(WebCore::Element&) InlineStyleSheetOwner.cpp:134 | WebCore::InlineStyleSheetOwner::createSheet(WebCore::Element&, WTF::String const&) InlineStyleSheetOwner.cpp:207 | WebCore::StyleSheetContents::parseString(WTF::String const&) StyleSheetContents.cpp:357 | WebCore::CSSParser::parseSheet(WebCore::StyleSheetContents*, WTF::String const&, WebCore::CSSParser::RuleParsing) CSSParser.cpp:126 | WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing) CSSParserImpl.cpp:245 | bool WebCore::CSSParserImpl::consumeRuleList<WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing)::$_2>(WebCore::CSSParserTokenRange, WebCore::CSSParserImpl::RuleListType, WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing)::$_2) CSSParserImpl.cpp:387 | WebCore::CSSParserImpl::consumeQualifiedRule(WebCore::CSSParserTokenRange&, WebCore::CSSParserImpl::AllowedRulesType) CSSParserImpl.cpp:473 | WebCore::CSSParserImpl::consumeStyleRule(WebCore::CSSParserTokenRange, WebCore::CSSParserTokenRange) CSSParserImpl.cpp:747 | WebCore::CSSParserImpl::consumeDeclarationList(WebCore::CSSParserTokenRange, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:780 | WebCore::CSSParserImpl::consumeDeclaration(WebCore::CSSParserTokenRange, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:842 | WebCore::CSSParserImpl::consumeDeclarationValue(WebCore::CSSParserTokenRange, WebCore::CSSPropertyID, bool, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:858 | WebCore::CSSPropertyParser::parseValue(WebCore::CSSPropertyID, bool, WebCore::CSSParserTokenRange const&, WebCore::CSSParserContext const&, WTF::Vector<WebCore::CSSProperty, 256ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&, WebCore::StyleRuleBase::Type) CSSPropertyParser.cpp:267 | WebCore::CSSPropertyParser::parseValueStart(WebCore::CSSPropertyID, bool) CSSPropertyParser.cpp:0 | WebCore::CSSPropertyParser::parseSingleValue(WebCore::CSSPropertyID, WebCore::CSSPropertyID) CSSPropertyParser.cpp:3831 | WebCore::consumeFontFamily(WebCore::CSSParserTokenRange&) CSSPropertyParser.cpp:1041 | WebCore::CSSValueList::createCommaSeparated() CSSValueList.h:40 | WTF::RefCounted<WebCore::CSSValue>::operator new(unsigned long) RefCounted.h:140 | WTF::fastMalloc(unsigned long) FastMalloc.cpp:258
Comment 1 Radar WebKit Bug Importer 2017-12-01 13:59:20 PST
<rdar://problem/35804867>
Comment 2 Radar WebKit Bug Importer 2017-12-01 13:59:22 PST
<rdar://problem/35804869>
Comment 3 Antti Koivisto 2018-04-04 03:04:13 PDT
02/12/2017, 0.04 Simon Fraser:
Readable stack:

WebCore::jsNodePrototypeFunctionAppendChild(JSC::ExecState*) JSNode.cpp:851
 |long long WebCore::IDLOperation<WebCore::JSNode>::call<&(WebCore::jsNodePrototypeFunctionAppendChildBody(JSC::ExecState*, WebCore::JSNode*, JSC::ThrowScope&)), (WebCore::CastedThisErrorBehavior)0>(JSC::ExecState&, char const*) JSDOMOperation.h:53
 |WebCore::jsNodePrototypeFunctionAppendChildBody(JSC::ExecState*, WebCore::JSNode*, JSC::ThrowScope&) JSNode.cpp:845
 |WebCore::Node::appendChild(WebCore::Node&) Node.cpp:434
 |WebCore::ContainerNode::appendChild(WebCore::Node&) ContainerNode.cpp:672
 |WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&) ContainerNode.cpp:696
 |void WebCore::executeNodeInsertionWithScriptAssertion<WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&)::$_4>(WebCore::ContainerNode&, WebCore::Node&, WebCore::ContainerNode::ChildChangeSource, WebCore::ReplacedAllChildren, WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck(WebCore::Node&)::$_4) ContainerNode.cpp:183
 |WebCore::notifyChildNodeInserted(WebCore::ContainerNode&, WebCore::Node&) ContainerNodeAlgorithms.cpp:99
 |WebCore::notifyNodeInsertedIntoDocument(WebCore::ContainerNode&, WebCore::Node&, WebCore::TreeScopeChange, WTF::Vector<WTF::Ref<WebCore::Node>, 11ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&) ContainerNodeAlgorithms.cpp:44
 |WebCore::HTMLStyleElement::insertedIntoAncestor(WebCore::Node::InsertionType, WebCore::ContainerNode&) HTMLStyleElement.cpp:104
 |WebCore::InlineStyleSheetOwner::insertedIntoDocument(WebCore::Element&) InlineStyleSheetOwner.cpp:93
 |WebCore::InlineStyleSheetOwner::createSheetFromTextContents(WebCore::Element&) InlineStyleSheetOwner.cpp:134
 |WebCore::InlineStyleSheetOwner::createSheet(WebCore::Element&, WTF::String const&) InlineStyleSheetOwner.cpp:207
 |WebCore::StyleSheetContents::parseString(WTF::String const&) StyleSheetContents.cpp:357
 |WebCore::CSSParser::parseSheet(WebCore::StyleSheetContents*, WTF::String const&, WebCore::CSSParser::RuleParsing) CSSParser.cpp:126
 |WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing) CSSParserImpl.cpp:245
 |bool WebCore::CSSParserImpl::consumeRuleList<WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing)::$_2>(WebCore::CSSParserTokenRange, WebCore::CSSParserImpl::RuleListType, WebCore::CSSParserImpl::parseStyleSheet(WTF::String const&, WebCore::CSSParserContext const&, WebCore::StyleSheetContents*, WebCore::CSSParser::RuleParsing)::$_2) CSSParserImpl.cpp:387
 |WebCore::CSSParserImpl::consumeQualifiedRule(WebCore::CSSParserTokenRange&, WebCore::CSSParserImpl::AllowedRulesType) CSSParserImpl.cpp:473
 |WebCore::CSSParserImpl::consumeStyleRule(WebCore::CSSParserTokenRange, WebCore::CSSParserTokenRange) CSSParserImpl.cpp:747
 |WebCore::CSSParserImpl::consumeDeclarationList(WebCore::CSSParserTokenRange, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:780
 |WebCore::CSSParserImpl::consumeDeclaration(WebCore::CSSParserTokenRange, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:842
 |WebCore::CSSParserImpl::consumeDeclarationValue(WebCore::CSSParserTokenRange, WebCore::CSSPropertyID, bool, WebCore::StyleRuleBase::Type) CSSParserImpl.cpp:858
 |WebCore::CSSPropertyParser::parseValue(WebCore::CSSPropertyID, bool, WebCore::CSSParserTokenRange const&, WebCore::CSSParserContext const&, WTF::Vector<WebCore::CSSProperty, 256ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&, WebCore::StyleRuleBase::Type) CSSPropertyParser.cpp:267
 |WebCore::CSSPropertyParser::parseValueStart(WebCore::CSSPropertyID, bool) CSSPropertyParser.cpp:0
 |WebCore::CSSPropertyParser::parseSingleValue(WebCore::CSSPropertyID, WebCore::CSSPropertyID) CSSPropertyParser.cpp:3831
 |WebCore::consumeFontFamily(WebCore::CSSParserTokenRange&) CSSPropertyParser.cpp:1041
 |WebCore::CSSValueList::createCommaSeparated() CSSValueList.h:40
 |WTF::RefCounted<WebCore::CSSValue>::operator new(unsigned long) RefCounted.h:140
 |WTF::fastMalloc(unsigned long) FastMalloc.cpp:258
Comment 4 Tadeu Zagallo 2018-04-11 15:17:33 PDT
Created attachment 337739 [details]
Patch
Comment 5 EWS Watchlist 2018-04-11 16:22:36 PDT
Comment on attachment 337739 [details]
Patch

Attachment 337739 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/7288071

New failing tests:
fast/dom/StyleSheet/gc-inline-style-cssvalues.html
fast/dom/gc-9.html
Comment 6 EWS Watchlist 2018-04-11 16:22:38 PDT
Created attachment 337741 [details]
Archive of layout-test-results from ews101 for mac-sierra

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101  Port: mac-sierra  Platform: Mac OS X 10.12.6
Comment 7 EWS Watchlist 2018-04-11 16:32:09 PDT
Comment on attachment 337739 [details]
Patch

Attachment 337739 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/7288086

New failing tests:
fast/dom/StyleSheet/gc-inline-style-cssvalues.html
fast/dom/gc-9.html
Comment 8 EWS Watchlist 2018-04-11 16:32:11 PDT
Created attachment 337746 [details]
Archive of layout-test-results from ews107 for mac-sierra-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews107  Port: mac-sierra-wk2  Platform: Mac OS X 10.12.6
Comment 9 EWS Watchlist 2018-04-11 16:51:40 PDT
Comment on attachment 337739 [details]
Patch

Attachment 337739 [details] did not pass ios-sim-ews (ios-simulator-wk2):
Output: http://webkit-queues.webkit.org/results/7288087

New failing tests:
fast/dom/StyleSheet/gc-inline-style-cssvalues.html
fast/dom/gc-9.html
Comment 10 EWS Watchlist 2018-04-11 16:51:41 PDT
Created attachment 337750 [details]
Archive of layout-test-results from ews123 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews123  Port: ios-simulator-wk2  Platform: Mac OS X 10.13.4
Comment 11 EWS Watchlist 2018-04-11 17:01:39 PDT
Comment on attachment 337739 [details]
Patch

Attachment 337739 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/7288085

New failing tests:
fast/dom/StyleSheet/gc-inline-style-cssvalues.html
fast/dom/gc-9.html
Comment 12 EWS Watchlist 2018-04-11 17:01:40 PDT
Created attachment 337752 [details]
Archive of layout-test-results from ews114 for mac-sierra

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews114  Port: mac-sierra  Platform: Mac OS X 10.12.6
Comment 13 EWS Watchlist 2018-04-11 18:33:25 PDT
Comment on attachment 337739 [details]
Patch

Attachment 337739 [details] did not pass win-ews (win):
Output: http://webkit-queues.webkit.org/results/7288983

New failing tests:
fast/dom/StyleSheet/gc-inline-style-cssvalues.html
fast/dom/gc-9.html
Comment 14 EWS Watchlist 2018-04-11 18:33:36 PDT
Created attachment 337762 [details]
Archive of layout-test-results from ews206 for win-future

The attached test failures were seen while running run-webkit-tests on the win-ews.
Bot: ews206  Port: win-future  Platform: CYGWIN_NT-6.1-2.9.0-0.318-5-3-x86_64-64bit
Comment 15 Antti Koivisto 2018-04-12 06:55:30 PDT
Those tests probably just need rebaselining.
Comment 16 Antti Koivisto 2018-04-12 06:59:34 PDT
Comment on attachment 337739 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=337739&action=review

> Source/WebCore/css/PropertySetCSSStyleDeclaration.cpp:372
> +    UNUSED_PARAM(type);

You can just remove the 'type'  variable instead.
Comment 17 Alexey Proskuryakov 2018-04-12 09:15:12 PDT
Comment on attachment 337739 [details]
Patch

These failures look like legitimate regressions

-PASS document.body.style.getPropertyCSSValue("color").foo is 'bar'
+FAIL document.body.style.getPropertyCSSValue("color").foo should be bar (of type string). Was undefined (of type undefined).
Comment 18 Tadeu Zagallo 2018-04-12 16:18:55 PDT
(In reply to Alexey Proskuryakov from comment #17)
> Comment on attachment 337739 [details]
> Patch
> 
> These failures look like legitimate regressions
> 
> -PASS document.body.style.getPropertyCSSValue("color").foo is 'bar'
> +FAIL document.body.style.getPropertyCSSValue("color").foo should be bar (of
> type string). Was undefined (of type undefined).

The failure is legitimate, but I believe the test may be misleading: the CSS value is not being collected because of the property being added to it, but if we just use a WeakSet instead, the object is collected and identity is not preserved. But indeed, with this patch, it will always return a new object. Alternatively, we can use weak map to fix the leak and preserve the current behaviour and then discuss whether identity should be preserved or not.

The following variation of the 'fast/dom/gc-inline-style-cssvalues.html' test fails on master:

    var expr = 'document.body.style.getPropertyCSSValue("color")';
    var set = new WeakSet();
    set.add(eval(expr));
    gc();
    shouldBe(`set.has(${expr})`, "true");
Comment 19 Antti Koivisto 2018-04-13 03:35:07 PDT
> These failures look like legitimate regressions

They document what this patch (deliberately) does. Considering Blink removed CSSValue support completely years ago, it is very unlikely that their identity is important.
Comment 20 Tadeu Zagallo 2018-04-13 11:27:44 PDT
Assuming we are fine with changing the behaviour, should I remove the failing cases from the tests, update the tests to verify the new behaviour or just update the baseline?
Comment 21 Ryosuke Niwa 2018-04-13 16:09:22 PDT
I don't think we can break GC behavior here. We should fix GC lifecycle issue. Tadeu and I have already talked about this in person.
Comment 22 Tadeu Zagallo 2018-04-13 18:13:29 PDT
Created attachment 337936 [details]
Patch
Comment 23 Tadeu Zagallo 2018-04-13 19:21:27 PDT
Created attachment 337946 [details]
Patch
Comment 24 Geoffrey Garen 2018-04-17 16:05:16 PDT
Comment on attachment 337946 [details]
Patch

r=me
Comment 25 WebKit Commit Bot 2018-04-17 16:33:07 PDT
Comment on attachment 337946 [details]
Patch

Clearing flags on attachment: 337946

Committed r230737: <https://trac.webkit.org/changeset/230737>
Comment 26 WebKit Commit Bot 2018-04-17 16:33:09 PDT
All reviewed patches have been landed.  Closing bug.