[webkit-changes] [209913] trunk/Source/WTF
Title: [209913] trunk/Source/WTF Revision 209913 Author mmaxfi...@apple.com Date 2016-12-15 23:12:23 -0800 (Thu, 15 Dec 2016) Log Message Unreviewed build fix after r209910 Unreviewed. * wtf/Platform.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/Platform.h Diff Modified: trunk/Source/WTF/ChangeLog (209912 => 209913) --- trunk/Source/WTF/ChangeLog 2016-12-16 07:10:00 UTC (rev 209912) +++ trunk/Source/WTF/ChangeLog 2016-12-16 07:12:23 UTC (rev 209913) @@ -1,5 +1,13 @@ 2016-12-15 Myles C. Maxfield +Unreviewed build fix after r209910 + +Unreviewed. + +* wtf/Platform.h: + +2016-12-15 Myles C. Maxfield + Stop reinterpret_casting UBreakIterators to the undefined type TextBreakIterator https://bugs.webkit.org/show_bug.cgi?id=165931 Modified: trunk/Source/WTF/wtf/Platform.h (209912 => 209913) --- trunk/Source/WTF/wtf/Platform.h 2016-12-16 07:10:00 UTC (rev 209912) +++ trunk/Source/WTF/wtf/Platform.h 2016-12-16 07:12:23 UTC (rev 209913) @@ -1208,7 +1208,7 @@ #endif #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 101201 && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101200 -#define HAVE_TOUCH_BAR 0 +#define HAVE_TOUCH_BAR 1 #define HAVE_ADVANCED_SPELL_CHECKING 1 #if defined(__LP64__) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209911] tags/Safari-602.4.3/
Title: [209911] tags/Safari-602.4.3/ Revision 209911 Author bshaf...@apple.com Date 2016-12-15 22:45:34 -0800 (Thu, 15 Dec 2016) Log Message New tag. Added Paths tags/Safari-602.4.3/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209910] trunk
Title: [209910] trunk Revision 209910 Author za...@apple.com Date 2016-12-15 22:32:36 -0800 (Thu, 15 Dec 2016) Log Message text-align: justify and word-spacing combine to overflow column https://bugs.webkit.org/show_bug.cgi?id=165796 rdar://problem/29672168 Reviewed by Myles C. Maxfield. Source/WebCore: The value of the word-spacing property is not applied on the inline-tree boxes (normal line layout) with kerning enabled. It causes hittest failures and selection/rendering glitches. We normally use the pre-computed 'WordMeasurements' values to figure out the run widths. However with kerning on, in some cases we need to re-measure a certain part of the text by calling RenderText::width(). This function omits the word-spacing value for leading whitespace, so when this text fragment starts with a whitespace, (while it's not at the beginning of the run) we have to manually add the word-spacing value back. r146087 added this logic with the restriction of applying it only to whitespace-only runs. Test: fast/css/word-spacing-with-normal-layout.html * rendering/RenderBlockLineLayout.cpp: (WebCore::setLogicalWidthForTextRun): LayoutTests: These are progressions. * fast/css/word-spacing-with-normal-layout-expected.html: Added. * fast/css/word-spacing-with-normal-layout.html: Added. * platform/mac/css1/text_properties/word_spacing-expected.txt: * platform/mac/fast/css/word-space-extra-expected.txt: * platform/mac/fast/text/whitespace/span-in-word-space-causes-overflow-expected.txt: * platform/mac/fast/text/word-space-expected.txt: * platform/mac/svg/custom/svg-fonts-in-html-expected.txt: * platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-simulator/css1/text_properties/word_spacing-expected.txt trunk/LayoutTests/platform/ios-simulator/fast/text/whitespace/span-in-word-space-causes-overflow-expected.txt trunk/LayoutTests/platform/mac/css1/text_properties/word_spacing-expected.txt trunk/LayoutTests/platform/mac/fast/css/word-space-extra-expected.txt trunk/LayoutTests/platform/mac/fast/text/whitespace/span-in-word-space-causes-overflow-expected.txt trunk/LayoutTests/platform/mac/fast/text/word-space-expected.txt trunk/LayoutTests/platform/mac/svg/custom/svg-fonts-in-html-expected.txt trunk/LayoutTests/platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp Added Paths trunk/LayoutTests/fast/css/word-spacing-with-normal-layout-expected.html trunk/LayoutTests/fast/css/word-spacing-with-normal-layout.html Diff Modified: trunk/LayoutTests/ChangeLog (209909 => 209910) --- trunk/LayoutTests/ChangeLog 2016-12-16 05:54:24 UTC (rev 209909) +++ trunk/LayoutTests/ChangeLog 2016-12-16 06:32:36 UTC (rev 209910) @@ -1,3 +1,22 @@ +2016-12-15 Zalan Bujtas + +text-align: justify and word-spacing combine to overflow column +https://bugs.webkit.org/show_bug.cgi?id=165796 +rdar://problem/29672168 + +Reviewed by Myles C. Maxfield. + +These are progressions. + +* fast/css/word-spacing-with-normal-layout-expected.html: Added. +* fast/css/word-spacing-with-normal-layout.html: Added. +* platform/mac/css1/text_properties/word_spacing-expected.txt: +* platform/mac/fast/css/word-space-extra-expected.txt: +* platform/mac/fast/text/whitespace/span-in-word-space-causes-overflow-expected.txt: +* platform/mac/fast/text/word-space-expected.txt: +* platform/mac/svg/custom/svg-fonts-in-html-expected.txt: +* platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt: + 2016-12-15 Chris Dumez Make sure HTML validation bubble's state is updated after layout Added: trunk/LayoutTests/fast/css/word-spacing-with-normal-layout-expected.html (0 => 209910) --- trunk/LayoutTests/fast/css/word-spacing-with-normal-layout-expected.html (rev 0) +++ trunk/LayoutTests/fast/css/word-spacing-with-normal-layout-expected.html 2016-12-16 06:32:36 UTC (rev 209910) @@ -0,0 +1,16 @@ + + + +This tests that word-spacing works fine with normal line layout. + +div { + text-align: right; + width: 200px; + font-size: 15px; +} + + + +bar + + Added: trunk/LayoutTests/fast/css/word-spacing-with-normal-layout.html (0 => 209910) --- trunk/LayoutTests/fast/css/word-spacing-with-normal-layout.html (rev 0) +++ trunk/LayoutTests/fast/css/word-spacing-with-normal-layout.html 2016-12-16 06:32:36 UTC (rev 209910) @@ -0,0 +1,24 @@ + + + +This tests that word-spacing works fine with normal line layout. + +.col { + width: 200px; + font-size: 15px; +} + +.content { + text-align: right; + word-spacing: 70px; +} + + +if (window.internals) + internals.settings.setSimpleLineLayoutEnabled(false); + + + + bar + + Modified: trunk/LayoutTests/platform/ios-simulator/css1/text_properties/word_spacing-expected.txt (209909 =>
[webkit-changes] [209909] tags/Safari-603.1.16.2/Source
Title: [209909] tags/Safari-603.1.16.2/Source Revision 209909 Author bshaf...@apple.com Date 2016-12-15 21:54:24 -0800 (Thu, 15 Dec 2016) Log Message Versioning. Modified Paths tags/Safari-603.1.16.2/Source/_javascript_Core/Configurations/Version.xcconfig tags/Safari-603.1.16.2/Source/WebCore/Configurations/Version.xcconfig tags/Safari-603.1.16.2/Source/WebInspectorUI/Configurations/Version.xcconfig tags/Safari-603.1.16.2/Source/WebKit/mac/Configurations/Version.xcconfig tags/Safari-603.1.16.2/Source/WebKit2/Configurations/Version.xcconfig Diff Modified: tags/Safari-603.1.16.2/Source/_javascript_Core/Configurations/Version.xcconfig (209908 => 209909) --- tags/Safari-603.1.16.2/Source/_javascript_Core/Configurations/Version.xcconfig 2016-12-16 05:52:36 UTC (rev 209908) +++ tags/Safari-603.1.16.2/Source/_javascript_Core/Configurations/Version.xcconfig 2016-12-16 05:54:24 UTC (rev 209909) @@ -24,7 +24,7 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 1; +MICRO_VERSION = 2; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-603.1.16.2/Source/WebCore/Configurations/Version.xcconfig (209908 => 209909) --- tags/Safari-603.1.16.2/Source/WebCore/Configurations/Version.xcconfig 2016-12-16 05:52:36 UTC (rev 209908) +++ tags/Safari-603.1.16.2/Source/WebCore/Configurations/Version.xcconfig 2016-12-16 05:54:24 UTC (rev 209909) @@ -24,7 +24,7 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 1; +MICRO_VERSION = 2; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-603.1.16.2/Source/WebInspectorUI/Configurations/Version.xcconfig (209908 => 209909) --- tags/Safari-603.1.16.2/Source/WebInspectorUI/Configurations/Version.xcconfig 2016-12-16 05:52:36 UTC (rev 209908) +++ tags/Safari-603.1.16.2/Source/WebInspectorUI/Configurations/Version.xcconfig 2016-12-16 05:54:24 UTC (rev 209909) @@ -1,7 +1,7 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 1; +MICRO_VERSION = 2; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-603.1.16.2/Source/WebKit/mac/Configurations/Version.xcconfig (209908 => 209909) --- tags/Safari-603.1.16.2/Source/WebKit/mac/Configurations/Version.xcconfig 2016-12-16 05:52:36 UTC (rev 209908) +++ tags/Safari-603.1.16.2/Source/WebKit/mac/Configurations/Version.xcconfig 2016-12-16 05:54:24 UTC (rev 209909) @@ -24,7 +24,7 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 1; +MICRO_VERSION = 2; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-603.1.16.2/Source/WebKit2/Configurations/Version.xcconfig (209908 => 209909) --- tags/Safari-603.1.16.2/Source/WebKit2/Configurations/Version.xcconfig 2016-12-16 05:52:36 UTC (rev 209908) +++ tags/Safari-603.1.16.2/Source/WebKit2/Configurations/Version.xcconfig 2016-12-16 05:54:24 UTC (rev 209909) @@ -24,7 +24,7 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 1; +MICRO_VERSION = 2; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209908] tags/Safari-603.1.16.2/
Title: [209908] tags/Safari-603.1.16.2/ Revision 209908 Author bshaf...@apple.com Date 2016-12-15 21:52:36 -0800 (Thu, 15 Dec 2016) Log Message New tag. Added Paths tags/Safari-603.1.16.2/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209907] trunk/Source
Title: [209907] trunk/Source Revision 209907 Author mmaxfi...@apple.com Date 2016-12-15 21:19:32 -0800 (Thu, 15 Dec 2016) Log Message Stop reinterpret_casting UBreakIterators to the undefined type TextBreakIterator https://bugs.webkit.org/show_bug.cgi?id=165931 Source/WebCore: Reviewed by Alex Christensen. No new tests because there is no behavior change. * dom/CharacterData.cpp: (WebCore::CharacterData::parserAppendData): * editing/TextCheckingHelper.cpp: (WebCore::findMisspellings): * editing/VisibleUnits.cpp: (WebCore::wordBreakIteratorForMinOffsetBoundary): (WebCore::wordBreakIteratorForMaxOffsetBoundary): (WebCore::isLogicalStartOfWord): (WebCore::islogicalEndOfWord): (WebCore::visualWordPosition): (WebCore::startSentenceBoundary): (WebCore::endSentenceBoundary): (WebCore::previousSentencePositionBoundary): (WebCore::nextSentencePositionBoundary): * html/HTMLInputElement.cpp: * html/HTMLTextAreaElement.cpp: * html/InputType.cpp: * html/TextFieldInputType.cpp: * html/TextInputType.cpp: * platform/graphics/StringTruncator.cpp: (WebCore::textBreakAtOrPreceding): (WebCore::boundedTextBreakFollowing): (WebCore::rightClipToWordBuffer): * platform/graphics/mac/ComplexTextController.cpp: (WebCore::ComplexTextController::offsetForPosition): * platform/text/TextBoundaries.cpp: (WebCore::findNextWordFromIndex): (WebCore::findWordBoundary): (WebCore::findEndWordBoundary): * platform/text/mac/TextBoundaries.mm: (WebCore::findNextWordFromIndex): * rendering/BreakLines.h: (WebCore::nextBreakablePositionNonLoosely): (WebCore::nextBreakablePositionLoosely): * rendering/RenderBlock.cpp: * rendering/RenderText.cpp: (WebCore::makeCapitalized): (WebCore::RenderText::previousOffset): (WebCore::RenderText::previousOffsetForBackwardDeletion): (WebCore::RenderText::nextOffset): * rendering/SimpleLineLayoutTextFragmentIterator.h: * rendering/line/LineBreaker.h: Source/WebKit/ios: Reviewed by Alex Christensen. * Misc/WebUIKitSupport.mm: Source/WTF: We have a class declaration for TextBreakIterator but no definition for it. When we create an ICU UBreakIterator, we immediately reinterpret_cast it to this undefined type, and pass it around our code inside WebCore. Then, whenever we want to actually use this iterator, we reinterpret_cast it back to UBreakIterator. This is likely due to some ports historically implementing breaking interators on top of other libraries other than ICU; however, now, all ports use ICU. Because this internal type is not helpful and just adds confusion, we should just call our breaking iterators what they are: UBreakIterators. This patch is a mechanical replacement of TextBreakIterator to UBreakIterator and removes the functions we were calling which pass through directly to ubrk_*(). Reviewed by Alex Christensen. * wtf/text/LineBreakIteratorPoolICU.h: (WTF::LineBreakIteratorPool::take): (WTF::LineBreakIteratorPool::put): * wtf/text/StringView.cpp: (WTF::StringView::GraphemeClusters::Iterator::Impl::computeIndexEnd): * wtf/text/TextBreakIterator.cpp: (WTF::initializeIterator): (WTF::initializeIteratorWithRules): (WTF::setTextForIterator): (WTF::setContextAwareTextForIterator): (WTF::wordBreakIterator): (WTF::sentenceBreakIterator): (WTF::cursorMovementIterator): (WTF::acquireLineBreakIterator): (WTF::releaseLineBreakIterator): (WTF::openLineBreakIterator): (WTF::closeLineBreakIterator): (WTF::getNonSharedCharacterBreakIterator): (WTF::cacheNonSharedCharacterBreakIterator): (WTF::isWordTextBreak): (WTF::numGraphemeClusters): (WTF::numCharactersInGraphemeClusters): (WTF::textBreakFirst): Deleted. (WTF::textBreakLast): Deleted. (WTF::textBreakNext): Deleted. (WTF::textBreakPrevious): Deleted. (WTF::textBreakPreceding): Deleted. (WTF::textBreakFollowing): Deleted. (WTF::textBreakCurrent): Deleted. (WTF::isTextBreak): Deleted. * wtf/text/TextBreakIterator.h: (WTF::LazyLineBreakIterator::lastCharacter): (WTF::LazyLineBreakIterator::secondToLastCharacter): (WTF::LazyLineBreakIterator::setPriorContext): (WTF::LazyLineBreakIterator::updatePriorContext): (WTF::LazyLineBreakIterator::resetPriorContext): (WTF::LazyLineBreakIterator::priorContextLength): (WTF::LazyLineBreakIterator::get): (WTF::NonSharedCharacterBreakIterator::operator UBreakIterator*): (WTF::NonSharedCharacterBreakIterator::operator TextBreakIterator*): Deleted. Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/Platform.h trunk/Source/WTF/wtf/text/LineBreakIteratorPoolICU.h trunk/Source/WTF/wtf/text/StringView.cpp trunk/Source/WTF/wtf/text/TextBreakIterator.cpp trunk/Source/WTF/wtf/text/TextBreakIterator.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/CharacterData.cpp trunk/Source/WebCore/editing/TextCheckingHelper.cpp trunk/Source/WebCore/editing/VisibleUnits.cpp trunk/Source/WebCore/html/HTMLInputElement.cpp trunk/Source/WebCore/html/HTMLTextAreaElement.cpp trunk/Source/WebCore/html/InputType.cpp trunk/Source/WebCore/html/TextFieldInputType.cpp trunk/Source/WebCore/html/TextInputType.cpp trunk/Source
[webkit-changes] [209906] trunk/Source
Title: [209906] trunk/Source Revision 209906 Author da...@apple.com Date 2016-12-15 20:52:20 -0800 (Thu, 15 Dec 2016) Log Message Use asString instead of toWTFString, toString, or getString when we already checked isString https://bugs.webkit.org/show_bug.cgi?id=165895 Reviewed by Yusuke Suzuki. Source/_javascript_Core: Once we have called isString, we should always use asString and value rather than using functions that have to deal with non-JSString objects. This leads to slightly fewer branches, slightly less reference count churn, since the string is stored right inside the JSString, and obviates the need for exception handling. * bindings/ScriptValue.cpp: (Inspector::jsToInspectorValue): Use asString/value instead of getString. * dfg/DFGOperations.cpp: (JSC::DFG::operationMapHash): Call jsMapHash with its new arguments. * inspector/JSInjectedScriptHost.cpp: (Inspector::JSInjectedScriptHost::evaluateWithScopeExtension): Use asString/value instead of toWTFString. * inspector/JSJavaScriptCallFrame.cpp: (Inspector::JSJavaScriptCallFrame::evaluateWithScopeExtension): Ditto. * inspector/agents/InspectorHeapAgent.cpp: (Inspector::InspectorHeapAgent::getPreview): Use asString/tryGetValue, instead of the peculiar getString(nullptr) that was here before. * jsc.cpp: (functionGetGetterSetter): Use asString/toIdentifier instead of the much less efficient toWTFString/Identifier::fromString. (functionIsRope): Use asString instead of jsCast; same thing, but we should prefer the asString function, since it exists. (functionFindTypeForExpression): Use asString/value instead of getString. (functionHasBasicBlockExecuted): Ditto. (functionBasicBlockExecutionCount): Ditto. (functionCreateBuiltin): Use asString/value instead of toWTFString and removed unneeded RETURN_IF_EXCEPTION. (valueWithTypeOfWasmValue): Use asString instead of jsCast. (box): Ditto. * runtime/DateConstructor.cpp: (JSC::constructDate): Use asString/values instead of getString. * runtime/ExceptionHelpers.cpp: (JSC::errorDescriptionForValue): Tweaked formatting. * runtime/HashMapImpl.h: (JSC::jsMapHash): Changed this function to use asString/value. * runtime/JSCJSValue.cpp: (JSC::JSValue::dumpInContextAssumingStructure): Use asString instead of jsCast. (JSC::JSValue::dumpForBacktrace): Ditto. * runtime/JSCJSValueInlines.h: (JSC::toPreferredPrimitiveType): Ditto. * runtime/JSGlobalObjectFunctions.cpp: (JSC::globalFuncEval): Use asString/value instead of toWTFString. * runtime/JSString.cpp: (JSC::JSString::destroy): Streamlined by removing local variable. (JSC::JSString::estimatedSize): Use asString instead of jsCast. (JSC::JSString::visitChildren): Ditto. (JSC::JSString::toThis): Ditto. * runtime/JSString.h: (JSC::JSValue::toString): Ditto. (JSC::JSValue::toStringOrNull): Ditto. * runtime/NumberPrototype.cpp: (JSC::numberProtoFuncValueOf): Ditto. * runtime/ObjectPrototype.cpp: (JSC::objectProtoFuncToString): Ditto. * runtime/StringPrototype.cpp: (JSC::stringProtoFuncRepeatCharacter): Ditto. (JSC::stringProtoFuncSubstr): Ditto. (JSC::builtinStringSubstrInternal): Simplified assertion by removing local variable. Source/WebCore: * Modules/fetch/FetchBody.cpp: (WebCore::FetchBody::extract): Use asString/value instead of toWTFString. * Modules/mediastream/SDPProcessor.cpp: (WebCore::SDPProcessor::callScript): Use asString/value instead of getString. * bindings/js/ArrayValue.cpp: (WebCore::ArrayValue::get): Use asString/value instead of toWTFString. * bindings/js/IDBBindingUtilities.cpp: (WebCore::get): Use asString/length instead of toString/length. (WebCore::createIDBKeyFromValue): Use asString/value instead of toWTFString. * bindings/js/JSCryptoAlgorithmDictionary.cpp: (WebCore::JSCryptoAlgorithmDictionary::getAlgorithmIdentifier): Ditto. * bindings/js/JSDataCueCustom.cpp: (WebCore::constructJSDataCue): Use asString/value instead of getString. * bindings/js/JSInspectorFrontendHostCustom.cpp: (WebCore::populateContextMenuItems): Use asString/value instead of toWTFString. * bindings/js/ScriptController.cpp: (WebCore::jsValueToModuleKey): Use asString/toIdentifier instead of jsCast/value/Identifier::fromString. * bindings/js/SerializedScriptValue.cpp: (WebCore::CloneSerializer::dumpIfTerminal): Streamline by getting rid of local variable. * contentextensions/ContentExtensionParser.cpp: (WebCore::ContentExtensions::getDomainList): Use asString instead of jsCast. (WebCore::ContentExtensions::loadTrigger): Use asString/value instead of toWTFString. (WebCore::ContentExtensions::loadAction): Ditto. * css/FontFace.cpp: (WebCore::FontFace::create): Use asString/value instead of getString. Source/WebKit/mac: * Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::addValueToArray): Use asString/value instead of toWTFString. * WebView/WebView.mm: (aeDescFromJSValue): Use asString/value instead of getString. Source/WebKit2: * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: (WebKit::NPRuntimeObjectMap::convert
[webkit-changes] [209905] tags/Safari-603.1.16.1/Source
Title: [209905] tags/Safari-603.1.16.1/Source Revision 209905 Author bshaf...@apple.com Date 2016-12-15 20:40:49 -0800 (Thu, 15 Dec 2016) Log Message Versioning. Modified Paths tags/Safari-603.1.16.1/Source/_javascript_Core/Configurations/Version.xcconfig tags/Safari-603.1.16.1/Source/WebCore/Configurations/Version.xcconfig tags/Safari-603.1.16.1/Source/WebInspectorUI/Configurations/Version.xcconfig tags/Safari-603.1.16.1/Source/WebKit/mac/Configurations/Version.xcconfig tags/Safari-603.1.16.1/Source/WebKit2/Configurations/Version.xcconfig Diff Modified: tags/Safari-603.1.16.1/Source/_javascript_Core/Configurations/Version.xcconfig (209904 => 209905) --- tags/Safari-603.1.16.1/Source/_javascript_Core/Configurations/Version.xcconfig 2016-12-16 04:37:57 UTC (rev 209904) +++ tags/Safari-603.1.16.1/Source/_javascript_Core/Configurations/Version.xcconfig 2016-12-16 04:40:49 UTC (rev 209905) @@ -24,9 +24,9 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: tags/Safari-603.1.16.1/Source/WebCore/Configurations/Version.xcconfig (209904 => 209905) --- tags/Safari-603.1.16.1/Source/WebCore/Configurations/Version.xcconfig 2016-12-16 04:37:57 UTC (rev 209904) +++ tags/Safari-603.1.16.1/Source/WebCore/Configurations/Version.xcconfig 2016-12-16 04:40:49 UTC (rev 209905) @@ -24,9 +24,9 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: tags/Safari-603.1.16.1/Source/WebInspectorUI/Configurations/Version.xcconfig (209904 => 209905) --- tags/Safari-603.1.16.1/Source/WebInspectorUI/Configurations/Version.xcconfig 2016-12-16 04:37:57 UTC (rev 209904) +++ tags/Safari-603.1.16.1/Source/WebInspectorUI/Configurations/Version.xcconfig 2016-12-16 04:40:49 UTC (rev 209905) @@ -1,9 +1,9 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The system version prefix is based on the current system version. SYSTEM_VERSION_PREFIX[sdk=iphone*] = 8; Modified: tags/Safari-603.1.16.1/Source/WebKit/mac/Configurations/Version.xcconfig (209904 => 209905) --- tags/Safari-603.1.16.1/Source/WebKit/mac/Configurations/Version.xcconfig 2016-12-16 04:37:57 UTC (rev 209904) +++ tags/Safari-603.1.16.1/Source/WebKit/mac/Configurations/Version.xcconfig 2016-12-16 04:40:49 UTC (rev 209905) @@ -24,9 +24,9 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: tags/Safari-603.1.16.1/Source/WebKit2/Configurations/Version.xcconfig (209904 => 209905) --- tags/Safari-603.1.16.1/Source/WebKit2/Configurations/Version.xcconfig 2016-12-16 04:37:57 UTC (rev 209904) +++ tags/Safari-603.1.16.1/Source/WebKit2/Configurations/Version.xcconfig 2016-12-16 04:40:49 UTC (rev 209905) @@ -24,9 +24,9 @@ MAJOR_VERSION = 603; MINOR_VERSION = 1; TINY_VERSION = 16; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209903] trunk/Source/WebCore
Title: [209903] trunk/Source/WebCore Revision 209903 Author za...@apple.com Date 2016-12-15 20:37:28 -0800 (Thu, 15 Dec 2016) Log Message Change ::computeLogicalHeight's computedValues out argument to the return value. https://bugs.webkit.org/show_bug.cgi?id=165789 Reviewed by Simon Fraser. No change in functionality. * html/shadow/SliderThumbElement.cpp: (WebCore::RenderSliderContainer::computeLogicalHeight): * html/shadow/mac/ImageControlsButtonElementMac.cpp: (WebCore::RenderImageControlsButton::computeLogicalHeight): * html/shadow/mac/ImageControlsRootElementMac.cpp: (WebCore::RenderImageControls::computeLogicalHeight): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::computeBlockPreferredLogicalWidths): (WebCore::RenderBlock::estimateRegionRangeForBoxChild): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::checkForPaginationLogicalHeightChange): * rendering/RenderBox.cpp: (WebCore::RenderBox::updateLogicalHeight): (WebCore::RenderBox::computeLogicalHeight): (WebCore::RenderBox::computePercentageLogicalHeight): (WebCore::RenderBox::computeReplacedLogicalHeightUsing): (WebCore::RenderBox::availableLogicalHeightUsing): * rendering/RenderBox.h: (WebCore::RenderBox::ComputedMarginValues::ComputedMarginValues): Deleted. (WebCore::RenderBox::LogicalExtentComputedValues::LogicalExtentComputedValues): Deleted. * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::mainAxisContentExtent): * rendering/RenderFlowThread.cpp: (WebCore::RenderFlowThread::computeLogicalHeight): * rendering/RenderFlowThread.h: * rendering/RenderListBox.cpp: (WebCore::RenderListBox::computeLogicalHeight): * rendering/RenderListBox.h: * rendering/RenderMeter.cpp: (WebCore::RenderMeter::computeLogicalHeight): * rendering/RenderMeter.h: * rendering/RenderMultiColumnFlowThread.cpp: (WebCore::RenderMultiColumnFlowThread::computeLogicalHeight): * rendering/RenderMultiColumnFlowThread.h: * rendering/RenderMultiColumnSet.cpp: (WebCore::RenderMultiColumnSet::computeLogicalHeight): * rendering/RenderMultiColumnSet.h: * rendering/RenderProgress.cpp: (WebCore::RenderProgress::computeLogicalHeight): * rendering/RenderProgress.h: * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::computeLogicalHeight): * rendering/RenderTextControl.h: * rendering/RenderView.cpp: (WebCore::RenderView::computeLogicalHeight): * rendering/RenderView.h: * rendering/svg/RenderSVGForeignObject.cpp: (WebCore::RenderSVGForeignObject::computeLogicalHeight): * rendering/svg/RenderSVGForeignObject.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/shadow/SliderThumbElement.cpp trunk/Source/WebCore/html/shadow/mac/ImageControlsButtonElementMac.cpp trunk/Source/WebCore/html/shadow/mac/ImageControlsRootElementMac.cpp trunk/Source/WebCore/rendering/RenderBlock.cpp trunk/Source/WebCore/rendering/RenderBlockFlow.cpp trunk/Source/WebCore/rendering/RenderBox.cpp trunk/Source/WebCore/rendering/RenderBox.h trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp trunk/Source/WebCore/rendering/RenderFlowThread.cpp trunk/Source/WebCore/rendering/RenderFlowThread.h trunk/Source/WebCore/rendering/RenderListBox.cpp trunk/Source/WebCore/rendering/RenderListBox.h trunk/Source/WebCore/rendering/RenderMeter.cpp trunk/Source/WebCore/rendering/RenderMeter.h trunk/Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp trunk/Source/WebCore/rendering/RenderMultiColumnFlowThread.h trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp trunk/Source/WebCore/rendering/RenderMultiColumnSet.h trunk/Source/WebCore/rendering/RenderProgress.cpp trunk/Source/WebCore/rendering/RenderProgress.h trunk/Source/WebCore/rendering/RenderTextControl.cpp trunk/Source/WebCore/rendering/RenderTextControl.h trunk/Source/WebCore/rendering/RenderView.cpp trunk/Source/WebCore/rendering/RenderView.h trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.cpp trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.h Diff Modified: trunk/Source/WebCore/ChangeLog (209902 => 209903) --- trunk/Source/WebCore/ChangeLog 2016-12-16 03:35:54 UTC (rev 209902) +++ trunk/Source/WebCore/ChangeLog 2016-12-16 04:37:28 UTC (rev 209903) @@ -1,3 +1,62 @@ +2016-12-15 Zalan Bujtas + +Change ::computeLogicalHeight's computedValues out argument to the return value. +https://bugs.webkit.org/show_bug.cgi?id=165789 + +Reviewed by Simon Fraser. + +No change in functionality. + +* html/shadow/SliderThumbElement.cpp: +(WebCore::RenderSliderContainer::computeLogicalHeight): +* html/shadow/mac/ImageControlsButtonElementMac.cpp: +(WebCore::RenderImageControlsButton::computeLogicalHeight): +* html/shadow/mac/ImageControlsRootElementMac.cpp: +(WebCore::RenderImageControls::computeLogicalHeight): +* rendering/RenderBlock.cpp: +(WebCore::RenderBlock::computeBlockPreferredLogicalWidths): +(WebCore::RenderBlock::estimateRegionRangeForBoxChild): +* rendering/RenderBlock
[webkit-changes] [209904] tags/Safari-603.1.16.1/
Title: [209904] tags/Safari-603.1.16.1/ Revision 209904 Author bshaf...@apple.com Date 2016-12-15 20:37:57 -0800 (Thu, 15 Dec 2016) Log Message New tag. Added Paths tags/Safari-603.1.16.1/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209902] trunk/Tools
Title: [209902] trunk/Tools Revision 209902 Author dba...@webkit.org Date 2016-12-15 19:35:54 -0800 (Thu, 15 Dec 2016) Log Message check-style should not complain about code in icu directories https://bugs.webkit.org/show_bug.cgi?id=53929 Reviewed by Darin Adler. Skip style checking of imported ICU headers to avoid a deluge of style issues as they do not conform to the WebKit Code Style guideline. We want to preserve the formatting of these headers so as to make it straightforward to merge changes to them, if necessary. * Scripts/webkitpy/style/checker.py: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/style/checker.py Diff Modified: trunk/Tools/ChangeLog (209901 => 209902) --- trunk/Tools/ChangeLog 2016-12-16 03:14:52 UTC (rev 209901) +++ trunk/Tools/ChangeLog 2016-12-16 03:35:54 UTC (rev 209902) @@ -1,3 +1,17 @@ +2016-12-15 Daniel Bates + +check-style should not complain about code in icu directories +https://bugs.webkit.org/show_bug.cgi?id=53929 + +Reviewed by Darin Adler. + +Skip style checking of imported ICU headers to avoid a deluge of style issues +as they do not conform to the WebKit Code Style guideline. We want to preserve +the formatting of these headers so as to make it straightforward to merge +changes to them, if necessary. + +* Scripts/webkitpy/style/checker.py: + 2016-12-15 Alexey Proskuryakov Move JSC testers from Yosemite to Sierra Modified: trunk/Tools/Scripts/webkitpy/style/checker.py (209901 => 209902) --- trunk/Tools/Scripts/webkitpy/style/checker.py 2016-12-16 03:14:52 UTC (rev 209901) +++ trunk/Tools/Scripts/webkitpy/style/checker.py 2016-12-16 03:35:54 UTC (rev 209902) @@ -315,9 +315,17 @@ # with FileType.NONE are automatically skipped without warning. _SKIPPED_FILES_WITHOUT_WARNING = [ "LayoutTests" + os.path.sep, + # Files generated by the bindings script should not be checked for style. -os.path.join('Source', 'WebCore', 'bindings', 'scripts', 'test')] +os.path.join('Source', 'WebCore', 'bindings', 'scripts', 'test'), +# ICU headers are imported. +os.path.join('Source', '_javascript_Core', 'icu'), +os.path.join('Source', 'WebCore', 'icu'), +os.path.join('Source', 'WebKit', 'mac', 'icu'), +os.path.join('Source', 'WTF', 'icu'), +] + # Extensions of files which are allowed to contain carriage returns. _CARRIAGE_RETURN_ALLOWED_FILE_EXTENSIONS = [ 'png', ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209901] trunk
Title: [209901] trunk Revision 209901 Author cdu...@apple.com Date 2016-12-15 19:14:52 -0800 (Thu, 15 Dec 2016) Log Message Make sure HTML validation bubble's state is updated after layout https://bugs.webkit.org/show_bug.cgi?id=165922 Reviewed by Simon Fraser. Source/WebCore: Make sure HTML validation bubble's state is updated after layout. In particular, if the validation bubble's associated element has moved or is no longer visible, we now hide the bubble. Tests: fast/forms/validation-bubble-disappears-when-input-detached.html fast/forms/validation-bubble-disappears-when-input-moved.html fast/forms/validation-bubble-disappears-when-input-no-longer-visible.html * page/FrameView.cpp: (WebCore::FrameView::viewportContentsChanged): * page/Page.cpp: (WebCore::Page::updateValidationBubbleStateIfNeeded): * page/Page.h: * page/ValidationMessageClient.h: Source/WebKit/mac: Make sure HTML validation bubble's state is updated after layout. In particular, if the validation bubble's associated element has moved or is no longer visible, we now hide the bubble. * WebCoreSupport/WebValidationMessageClient.h: * WebCoreSupport/WebValidationMessageClient.mm: (WebValidationMessageClient::showValidationMessage): (WebValidationMessageClient::hideValidationMessage): (WebValidationMessageClient::updateValidationBubbleStateIfNeeded): Source/WebKit2: Make sure HTML validation bubble's state is updated after layout. In particular, if the validation bubble's associated element has moved or is no longer visible, we now hide the bubble. * WebProcess/WebCoreSupport/WebValidationMessageClient.cpp: (WebKit::WebValidationMessageClient::showValidationMessage): (WebKit::WebValidationMessageClient::hideValidationMessage): (WebKit::WebValidationMessageClient::updateValidationBubbleStateIfNeeded): * WebProcess/WebCoreSupport/WebValidationMessageClient.h: LayoutTests: Add several layout tests to cover this. * fast/forms/validation-bubble-disappears-when-input-detached-expected.txt: Added. * fast/forms/validation-bubble-disappears-when-input-detached.html: Added. * fast/forms/validation-bubble-disappears-when-input-moved-expected.txt: Added. * fast/forms/validation-bubble-disappears-when-input-moved.html: Added. * fast/forms/validation-bubble-disappears-when-input-no-longer-visible-expected.txt: Added. * fast/forms/validation-bubble-disappears-when-input-no-longer-visible.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/forms/validation-custom-message-expected.txt trunk/LayoutTests/fast/forms/validation-custom-message.html trunk/LayoutTests/fast/forms/validation-messages-expected.txt trunk/LayoutTests/fast/forms/validation-messages.html trunk/LayoutTests/platform/ios-simulator-wk2/fast/forms/validation-messages-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/FrameView.cpp trunk/Source/WebCore/page/Page.cpp trunk/Source/WebCore/page/Page.h trunk/Source/WebCore/page/ValidationMessageClient.h trunk/Source/WebKit/mac/ChangeLog trunk/Source/WebKit/mac/WebCoreSupport/WebValidationMessageClient.h trunk/Source/WebKit/mac/WebCoreSupport/WebValidationMessageClient.mm trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebValidationMessageClient.cpp trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebValidationMessageClient.h Added Paths trunk/LayoutTests/fast/forms/validation-bubble-disappears-when-input-detached-expected.txt trunk/LayoutTests/fast/forms/validation-bubble-disappears-when-input-detached.html trunk/LayoutTests/fast/forms/validation-bubble-disappears-when-input-moved-expected.txt trunk/LayoutTests/fast/forms/validation-bubble-disappears-when-input-moved.html trunk/LayoutTests/fast/forms/validation-bubble-disappears-when-input-no-longer-visible-expected.txt trunk/LayoutTests/fast/forms/validation-bubble-disappears-when-input-no-longer-visible.html Diff Modified: trunk/LayoutTests/ChangeLog (209900 => 209901) --- trunk/LayoutTests/ChangeLog 2016-12-16 03:01:14 UTC (rev 209900) +++ trunk/LayoutTests/ChangeLog 2016-12-16 03:14:52 UTC (rev 209901) @@ -1,5 +1,22 @@ 2016-12-15 Chris Dumez +Make sure HTML validation bubble's state is updated after layout +https://bugs.webkit.org/show_bug.cgi?id=165922 + + +Reviewed by Simon Fraser. + +Add several layout tests to cover this. + +* fast/forms/validation-bubble-disappears-when-input-detached-expected.txt: Added. +* fast/forms/validation-bubble-disappears-when-input-detached.html: Added. +* fast/forms/validation-bubble-disappears-when-input-moved-expected.txt: Added. +* fast/forms/validation-bubble-disappears-when-input-moved.html: Added. +* fast/forms/validation-bubble-disappears-when-input-no-longer-visible-expected.txt: Added. +* fast/forms/validation-bubble-disappears-when-input-no-longer-visible.html: Added. + +2016-12-15 Chris Dumez + Move charCode / keyCode / which at
[webkit-changes] [209900] trunk/Source/WebCore
Title: [209900] trunk/Source/WebCore Revision 209900 Author commit-qu...@webkit.org Date 2016-12-15 19:01:14 -0800 (Thu, 15 Dec 2016) Log Message [WebIDL] Remove use of Dictionary from JSCryptoAlgorithmDictionary https://bugs.webkit.org/show_bug.cgi?id=165919 Patch by Sam Weinig on 2016-12-15 Reviewed by Darin Adler. * bindings/js/JSCryptoAlgorithmDictionary.cpp: * bindings/js/JSCryptoAlgorithmDictionary.h: * bindings/js/JSCryptoOperationData.cpp: * bindings/js/JSCryptoOperationData.h: * bindings/js/JSWebKitSubtleCryptoCustom.cpp: Replace simplistic use of Dictionary with simplistic use of direct JSObject functions. Also, pass the ExecState by reference. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/js/JSCryptoAlgorithmDictionary.cpp trunk/Source/WebCore/bindings/js/JSCryptoAlgorithmDictionary.h trunk/Source/WebCore/bindings/js/JSCryptoOperationData.cpp trunk/Source/WebCore/bindings/js/JSCryptoOperationData.h trunk/Source/WebCore/bindings/js/JSWebKitSubtleCryptoCustom.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (209899 => 209900) --- trunk/Source/WebCore/ChangeLog 2016-12-16 02:38:27 UTC (rev 209899) +++ trunk/Source/WebCore/ChangeLog 2016-12-16 03:01:14 UTC (rev 209900) @@ -1,3 +1,18 @@ +2016-12-15 Sam Weinig + +[WebIDL] Remove use of Dictionary from JSCryptoAlgorithmDictionary +https://bugs.webkit.org/show_bug.cgi?id=165919 + +Reviewed by Darin Adler. + +* bindings/js/JSCryptoAlgorithmDictionary.cpp: +* bindings/js/JSCryptoAlgorithmDictionary.h: +* bindings/js/JSCryptoOperationData.cpp: +* bindings/js/JSCryptoOperationData.h: +* bindings/js/JSWebKitSubtleCryptoCustom.cpp: +Replace simplistic use of Dictionary with simplistic use of direct JSObject +functions. Also, pass the ExecState by reference. + 2016-12-15 Filip Pizlo Get rid of HeapRootVisitor and make SlotVisitor less painful to use Modified: trunk/Source/WebCore/bindings/js/JSCryptoAlgorithmDictionary.cpp (209899 => 209900) --- trunk/Source/WebCore/bindings/js/JSCryptoAlgorithmDictionary.cpp 2016-12-16 02:38:27 UTC (rev 209899) +++ trunk/Source/WebCore/bindings/js/JSCryptoAlgorithmDictionary.cpp 2016-12-16 03:01:14 UTC (rev 209900) @@ -32,12 +32,12 @@ #include "CryptoAlgorithmAesKeyGenParamsDeprecated.h" #include "CryptoAlgorithmHmacKeyParamsDeprecated.h" #include "CryptoAlgorithmHmacParamsDeprecated.h" +#include "CryptoAlgorithmParameters.h" #include "CryptoAlgorithmRegistry.h" #include "CryptoAlgorithmRsaKeyGenParamsDeprecated.h" #include "CryptoAlgorithmRsaKeyParamsWithHashDeprecated.h" #include "CryptoAlgorithmRsaOaepParamsDeprecated.h" #include "CryptoAlgorithmRsaSsaParamsDeprecated.h" -#include "Dictionary.h" #include "ExceptionCode.h" #include "JSCryptoOperationData.h" #include "JSDOMBinding.h" @@ -52,21 +52,27 @@ Required, }; -bool JSCryptoAlgorithmDictionary::getAlgorithmIdentifier(ExecState* exec, JSValue value, CryptoAlgorithmIdentifier& algorithmIdentifier) +static inline JSValue getProperty(ExecState& state, JSObject* object, const char* name) { -VM& vm = exec->vm(); -auto scope = DECLARE_THROW_SCOPE(vm); +return object->get(&state, Identifier::fromString(&state, name)); +} +bool JSCryptoAlgorithmDictionary::getAlgorithmIdentifier(ExecState& state, JSValue value, CryptoAlgorithmIdentifier& algorithmIdentifier) +{ +auto scope = DECLARE_THROW_SCOPE(state.vm()); + // typedef (Algorithm or DOMString) AlgorithmIdentifier; String algorithmName; -if (value.isString()) -algorithmName = value.toWTFString(exec); -else if (value.isObject()) { -if (value.getObject()->inherits(StringObject::info())) -algorithmName = asString(asStringObject(value)->internalValue())->value(exec); -else { +if (value.isString()) { +algorithmName = value.toWTFString(&state); +RETURN_IF_EXCEPTION(scope, false); +} else if (value.isObject()) { +if (asObject(value)->inherits(StringObject::info())) { +algorithmName = asString(asStringObject(value)->internalValue())->value(&state); +RETURN_IF_EXCEPTION(scope, false); +} else { // FIXME: This doesn't perform some checks mandated by WebIDL for dictionaries: // - null and undefined input should be treated as if all elements in the dictionary were undefined; // - undefined elements should be treated as having a default value, or as not present if there isn't such; @@ -75,21 +81,22 @@ // This is partially because we don't implement it elsewhere in WebCore yet, and partially because // WebCrypto doesn't yet clearly specify what to do with non-present values in most cases anyway. -Dictionary dictionary(exec, value.getObject()); -dictionary.get("name", algorithmName); +auto nameValue = getProperty(state, asObject(valu
[webkit-changes] [209899] trunk
Title: [209899] trunk Revision 209899 Author keith_mil...@apple.com Date 2016-12-15 18:38:27 -0800 (Thu, 15 Dec 2016) Log Message Fix validation of non-void if blocks with no else https://bugs.webkit.org/show_bug.cgi?id=165938 Reviewed by Saam Barati. JSTests: Add a new failing test and a fix an existing one. * wasm/function-tests/dead-call.js: * wasm/function-tests/if-no-else-non-void.js: Added. Source/_javascript_Core: We should not have been allowing non-void if-blocks that don't have an else. Since this causes a value to be placed on the stack that only appears under some control flow and not another. * wasm/WasmValidate.cpp: Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/wasm/function-tests/dead-call.js trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/wasm/WasmValidate.cpp Added Paths trunk/JSTests/wasm/function-tests/if-no-else-non-void.js Diff Modified: trunk/JSTests/ChangeLog (209898 => 209899) --- trunk/JSTests/ChangeLog 2016-12-16 02:25:35 UTC (rev 209898) +++ trunk/JSTests/ChangeLog 2016-12-16 02:38:27 UTC (rev 209899) @@ -1,5 +1,17 @@ 2016-12-15 Keith Miller +Fix validation of non-void if blocks with no else +https://bugs.webkit.org/show_bug.cgi?id=165938 + +Reviewed by Saam Barati. + +Add a new failing test and a fix an existing one. + +* wasm/function-tests/dead-call.js: +* wasm/function-tests/if-no-else-non-void.js: Added. + +2016-12-15 Keith Miller + Wasm should not create empty unlinked callsites https://bugs.webkit.org/show_bug.cgi?id=165933 Modified: trunk/JSTests/wasm/function-tests/dead-call.js (209898 => 209899) --- trunk/JSTests/wasm/function-tests/dead-call.js 2016-12-16 02:25:35 UTC (rev 209898) +++ trunk/JSTests/wasm/function-tests/dead-call.js 2016-12-16 02:38:27 UTC (rev 209899) @@ -14,8 +14,12 @@ .Function("dead-call", { params: [], ret: "i32" }) .I32Const(0) - .If("i32", b => b.Call(0).Return()) - .I32Const(1) + .If("i32", b => + b.Call(0) + .Return() + .Else() + .I32Const(1) + ) .End() .End(); Added: trunk/JSTests/wasm/function-tests/if-no-else-non-void.js (0 => 209899) --- trunk/JSTests/wasm/function-tests/if-no-else-non-void.js (rev 0) +++ trunk/JSTests/wasm/function-tests/if-no-else-non-void.js 2016-12-16 02:38:27 UTC (rev 209899) @@ -0,0 +1,16 @@ +import * as assert from '../assert.js'; +import Builder from '../Builder.js'; + +const builder = (new Builder()) + .Type().End() + .Function().End() + .Code() + .Function("bad-if", { params: [], ret: "i32" }) + .I32Const(0) + .If("i32", b => b.I32Const(0)) + .End() + + .End(); + +const bin = builder.WebAssembly().get(); +assert.throws(() => new WebAssembly.Module(bin), WebAssembly.CompileError, "WebAssembly.Module doesn't validate: If-block had a non-void result type: I32 but had no else-block (evaluating 'new WebAssembly.Module(bin)')"); Modified: trunk/Source/_javascript_Core/ChangeLog (209898 => 209899) --- trunk/Source/_javascript_Core/ChangeLog 2016-12-16 02:25:35 UTC (rev 209898) +++ trunk/Source/_javascript_Core/ChangeLog 2016-12-16 02:38:27 UTC (rev 209899) @@ -1,3 +1,16 @@ +2016-12-15 Keith Miller + +Fix validation of non-void if blocks with no else +https://bugs.webkit.org/show_bug.cgi?id=165938 + +Reviewed by Saam Barati. + +We should not have been allowing non-void if-blocks that don't +have an else. Since this causes a value to be placed on the +stack that only appears under some control flow and not another. + +* wasm/WasmValidate.cpp: + 2016-12-15 Filip Pizlo Get rid of HeapRootVisitor and make SlotVisitor less painful to use Modified: trunk/Source/_javascript_Core/wasm/WasmValidate.cpp (209898 => 209899) --- trunk/Source/_javascript_Core/wasm/WasmValidate.cpp 2016-12-16 02:25:35 UTC (rev 209898) +++ trunk/Source/_javascript_Core/wasm/WasmValidate.cpp 2016-12-16 02:38:27 UTC (rev 209899) @@ -290,6 +290,7 @@ if (block.signature() == Void) return { }; +WASM_VALIDATOR_FAIL_IF(block.type() == BlockType::If, "If-block had a non-void result type: ", block.signature(), " but had no else-block"); WASM_VALIDATOR_FAIL_IF(stack.isEmpty(), "typed block falls through on empty stack"); WASM_VALIDATOR_FAIL_IF(block.signature() != stack.last(), "block fallthrough doesn't match its declared type"); @@ -299,8 +300,11 @@ auto Validate::addEndToUnreachable(ControlEntry& entry) -> Result { -if (entry.controlData.signature() != Void) -entry.enclosedExpressionStack.append(entry.controlData.signature()); +auto block = entry.controlData; +if (block.signature() != Void) { +WASM_VALIDATOR_FAIL_IF(block.type()
[webkit-changes] [209898] trunk/Source/WebKit2
Title: [209898] trunk/Source/WebKit2 Revision 209898 Author achristen...@apple.com Date 2016-12-15 18:25:35 -0800 (Thu, 15 Dec 2016) Log Message Improve NetworkSession logging https://bugs.webkit.org/show_bug.cgi?id=165941 Reviewed by Tim Horton. * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): One of the "didReceiveResponse completionHandler (cancel)" messages was wrong, and other messages could have more useful information without being overwhelming. Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkSessionCocoa.mm Diff Modified: trunk/Source/WebKit2/ChangeLog (209897 => 209898) --- trunk/Source/WebKit2/ChangeLog 2016-12-16 02:16:19 UTC (rev 209897) +++ trunk/Source/WebKit2/ChangeLog 2016-12-16 02:25:35 UTC (rev 209898) @@ -1,3 +1,17 @@ +2016-12-15 Alex Christensen + +Improve NetworkSession logging +https://bugs.webkit.org/show_bug.cgi?id=165941 + +Reviewed by Tim Horton. + +* NetworkProcess/cocoa/NetworkSessionCocoa.mm: +(-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]): +(-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]): +(-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): +One of the "didReceiveResponse completionHandler (cancel)" messages was wrong, +and other messages could have more useful information without being overwhelming. + 2016-12-15 Myles C. Maxfield Sort Xcode project files Modified: trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkSessionCocoa.mm (209897 => 209898) --- trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkSessionCocoa.mm 2016-12-16 02:16:19 UTC (rev 209897) +++ trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkSessionCocoa.mm 2016-12-16 02:25:35 UTC (rev 209898) @@ -176,7 +176,7 @@ auto sessionID = _session->sessionID(); auto challengeCompletionHandler = [completionHandlerCopy, sessionID, authenticationChallenge, taskIdentifier](WebKit::AuthenticationChallengeDisposition disposition, const WebCore::Credential& credential) { -LOG(NetworkSession, "%llu didReceiveChallenge completionHandler", taskIdentifier); +LOG(NetworkSession, "%llu didReceiveChallenge completionHandler %d", taskIdentifier, disposition); #if !USE(CREDENTIAL_STORAGE_WITH_NETWORK_SESSION) UNUSED_PARAM(sessionID); UNUSED_PARAM(authenticationChallenge); @@ -207,7 +207,7 @@ - (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didCompleteWithError:(NSError *)error { -LOG(NetworkSession, "%llu didCompleteWithError", task.taskIdentifier); +LOG(NetworkSession, "%llu didCompleteWithError %@", task.taskIdentifier, error); auto storedCredentials = _withCredentials ? WebCore::StoredCredentials::AllowStoredCredentials : WebCore::StoredCredentials::DoNotAllowStoredCredentials; if (auto* networkDataTask = _session->dataTaskForIdentifier(task.taskIdentifier, storedCredentials)) networkDataTask->didCompleteWithError(error); @@ -253,7 +253,7 @@ copyTimingData([dataTask _timingData], resourceResponse.networkLoadTiming()); auto completionHandlerCopy = Block_copy(completionHandler); networkDataTask->didReceiveResponse(WTFMove(resourceResponse), [completionHandlerCopy, taskIdentifier](WebCore::PolicyAction policyAction) { -LOG(NetworkSession, "%llu didReceiveResponse completionHandler (cancel)", taskIdentifier); +LOG(NetworkSession, "%llu didReceiveResponse completionHandler (%d)", taskIdentifier, policyAction); completionHandlerCopy(toNSURLSessionResponseDisposition(policyAction)); Block_release(completionHandlerCopy); }); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209895] trunk
Title: [209895] trunk Revision 209895 Author cdu...@apple.com Date 2016-12-15 17:29:23 -0800 (Thu, 15 Dec 2016) Log Message Move charCode / keyCode / which attributes from UIEvent to KeyboardEvent https://bugs.webkit.org/show_bug.cgi?id=165904 Reviewed by Sam Weinig. LayoutTests/imported/w3c: Rebaseline W3C test now that one more check is passing. * web-platform-tests/dom/events/Event-subclasses-constructors-expected.txt: Source/WebCore: Move 'charCode' / 'keyCode' attributes from UIEvent to KeyboardEvent and add 'which' to KeyboardEvent to match the specification: - https://w3c.github.io/uievents/#legacy-interface-KeyboardEvent We keep a 'which' attribute on UIEvent even though the specification does not say we should because Firefox and Chrome have 'which' on UIEvent still. Specification: - 'charCode' / 'keyCode' / 'which' on KeyboardEvent only Firefox: - 'charCode' / 'keyCode' on KeyboardEvent only - 'which' on UIEvent only Chrome: - 'charCode' / 'keyCode' / 'which' on KeyboardEvent - 'which' on UIEvent as well Old WebKit behavior: - 'charCode' / 'keyCode' / 'which' on UIEvent only New WebKit behavior: - 'charCode' / 'keyCode' / 'which' on KeyboardEvent - 'which' on UIEvent as well Our new behavior is identical to Chrome, much closer to the specification, and closer to Firefox as well. No new tests, updated / rebaselined existing tests. * dom/KeyboardEvent.cpp: (WebCore::KeyboardEvent::KeyboardEvent): (WebCore::KeyboardEvent::keyCode): (WebCore::KeyboardEvent::charCode): (WebCore::KeyboardEvent::which): * dom/KeyboardEvent.h: * dom/KeyboardEvent.idl: * dom/MouseEvent.cpp: (WebCore::MouseEvent::which): * dom/UIEvent.cpp: * dom/UIEvent.h: * dom/UIEvent.idl: Source/WebKit/mac: Update ObjC bindings so they keep building. * DOM/DOMUIEvent.mm: (-[DOMUIEvent keyCode]): (-[DOMUIEvent charCode]): LayoutTests: Extend existing testing. * fast/events/arrow-keys-on-body-expected.txt: * fast/events/arrow-keys-on-body.html: * fast/events/key-events-in-input-button-expected.txt: * fast/events/key-events-in-input-button.html: * fast/events/key-events-in-input-text-expected.txt: * fast/events/key-events-in-input-text.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/events/arrow-keys-on-body-expected.txt trunk/LayoutTests/fast/events/arrow-keys-on-body.html trunk/LayoutTests/fast/events/init-events-expected.txt trunk/LayoutTests/fast/events/key-events-in-input-button-expected.txt trunk/LayoutTests/fast/events/key-events-in-input-button.html trunk/LayoutTests/fast/events/key-events-in-input-text-expected.txt trunk/LayoutTests/fast/events/key-events-in-input-text.html trunk/LayoutTests/fast/events/script-tests/init-events.js trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-subclasses-constructors-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/KeyboardEvent.cpp trunk/Source/WebCore/dom/KeyboardEvent.h trunk/Source/WebCore/dom/KeyboardEvent.idl trunk/Source/WebCore/dom/MouseEvent.cpp trunk/Source/WebCore/dom/UIEvent.cpp trunk/Source/WebCore/dom/UIEvent.h trunk/Source/WebCore/dom/UIEvent.idl trunk/Source/WebKit/mac/ChangeLog trunk/Source/WebKit/mac/DOM/DOMUIEvent.mm trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEvent.cpp Diff Modified: trunk/LayoutTests/ChangeLog (209894 => 209895) --- trunk/LayoutTests/ChangeLog 2016-12-16 01:28:57 UTC (rev 209894) +++ trunk/LayoutTests/ChangeLog 2016-12-16 01:29:23 UTC (rev 209895) @@ -1,3 +1,19 @@ +2016-12-15 Chris Dumez + +Move charCode / keyCode / which attributes from UIEvent to KeyboardEvent +https://bugs.webkit.org/show_bug.cgi?id=165904 + +Reviewed by Sam Weinig. + +Extend existing testing. + +* fast/events/arrow-keys-on-body-expected.txt: +* fast/events/arrow-keys-on-body.html: +* fast/events/key-events-in-input-button-expected.txt: +* fast/events/key-events-in-input-button.html: +* fast/events/key-events-in-input-text-expected.txt: +* fast/events/key-events-in-input-text.html: + 2016-12-15 Megan Gardner Add coordinate space to event streams and streamline tests Modified: trunk/LayoutTests/fast/events/arrow-keys-on-body-expected.txt (209894 => 209895) --- trunk/LayoutTests/fast/events/arrow-keys-on-body-expected.txt 2016-12-16 01:28:57 UTC (rev 209894) +++ trunk/LayoutTests/fast/events/arrow-keys-on-body-expected.txt 2016-12-16 01:29:23 UTC (rev 209895) @@ -2,7 +2,7 @@ To test manually, press arrow keys and verify that no keypress events are logged. -target - type - ctrlKey,altKey,shiftKey,metaKey - key - code - keyIdentifier - location - keyCode - charCode -BODY - keydown - false,false,false,false - ArrowLeft - ArrowLeft - Left - DOM_KEY_LOCATION_STANDARD - 37 - 0 -BODY - keyup - false,false,false,false - ArrowLeft - ArrowLeft - Left - DOM_KEY_LOCATION_STANDARD - 37 - 0 +target - type - ctrlKey,altKey,shiftKey,meta
[webkit-changes] [209894] trunk/Tools
Title: [209894] trunk/Tools Revision 209894 Author a...@apple.com Date 2016-12-15 17:28:57 -0800 (Thu, 15 Dec 2016) Log Message Move JSC testers from Yosemite to Sierra https://bugs.webkit.org/show_bug.cgi?id=165925 Reviewed by Lucas Forschler. * BuildSlaveSupport/build.webkit.org-config/config.json: * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js: (WebKitBuildbot): Modified Paths trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js trunk/Tools/ChangeLog Diff Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json (209893 => 209894) --- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json 2016-12-16 01:20:24 UTC (rev 209893) +++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json 2016-12-16 01:28:57 UTC (rev 209894) @@ -2,8 +2,6 @@ "slaves": [ { "name": "test-slave", "platform": "*" }, { "name": "bot139", "platform": "mac-yosemite" }, -{ "name": "bot155", "platform": "mac-yosemite" }, -{ "name": "bot157", "platform": "mac-yosemite" }, { "name": "bot180", "platform": "mac-yosemite" }, { "name": "bot181", "platform": "mac-yosemite" }, { "name": "bot182", "platform": "mac-yosemite" }, @@ -10,8 +8,6 @@ { "name": "bot183", "platform": "mac-yosemite" }, { "name": "bot184", "platform": "mac-yosemite" }, { "name": "bot185", "platform": "mac-yosemite" }, -{ "name": "bot186", "platform": "mac-yosemite" }, -{ "name": "bot187", "platform": "mac-yosemite" }, { "name": "bot190", "platform": "mac-yosemite" }, { "name": "bot191", "platform": "mac-yosemite" }, { "name": "bot192", "platform": "mac-yosemite" }, @@ -45,8 +41,12 @@ { "name": "bot122", "platform": "mac-sierra" }, { "name": "bot141", "platform": "mac-sierra" }, { "name": "bot143", "platform": "mac-sierra" }, +{ "name": "bot155", "platform": "mac-sierra" }, +{ "name": "bot157", "platform": "mac-sierra" }, { "name": "bot160", "platform": "mac-sierra" }, { "name": "bot164", "platform": "mac-sierra" }, +{ "name": "bot186", "platform": "mac-sierra" }, +{ "name": "bot187", "platform": "mac-sierra" }, { "name": "bot199", "platform": "mac-sierra" }, { "name": "bot219", "platform": "mac-sierra" }, { "name": "bot439", "platform": "mac-sierra" }, @@ -97,7 +97,7 @@ "builders": [ { "name": "Apple Sierra Debug (Build)", "type": "Build", "builddir": "sierra-debug", "platform": "mac-sierra", "configuration": "debug", "architectures": ["x86_64"], - "triggers": ["sierra-debug-tests-wk1", "sierra-debug-tests-wk2"], + "triggers": ["sierra-debug-tests-jsc", "sierra-debug-tests-wk1", "sierra-debug-tests-wk2"], "slavenames": ["bot439", "bot698"] }, { "name": "Apple Sierra Debug WK1 (Tests)", "type": "TestWebKit1AllButJSC", "builddir": "sierra-debug-tests-wk1", @@ -112,7 +112,7 @@ }, { "name": "Apple Sierra Release (Build)", "type": "Build", "builddir": "sierra-release", "platform": "mac-sierra", "configuration": "release", "architectures": ["x86_64"], - "triggers": ["sierra-release-tests-wk1", "sierra-release-tests-wk2"], + "triggers": ["sierra-release-tests-jsc", "sierra-release-tests-wk1", "sierra-release-tests-wk2"], "slavenames": ["bot443", "bot699"] }, { "name": "Apple Sierra Release WK1 (Tests)", "type": "TestWebKit1AllButJSC", "builddir": "sierra-release-tests-wk1", @@ -129,6 +129,22 @@ "platform": "mac-sierra", "configuration": "release", "architectures": ["i386"], "slavenames": ["bot600"] }, +{ "name": "Apple Sierra Debug JSC (Tests)", "type": "TestJSC", "builddir": "sierra-debug-tests-jsc", + "platform": "mac-sierra", "configuration": "debug", "architectures": ["x86_64"], + "slavenames": ["bot155"] +}, +{ "name": "Apple Sierra Release JSC (Tests)", "type": "TestJSC", "builddir": "sierra-release-tests-jsc", + "platform": "mac-sierra", "configuration": "release", "architectures": ["x86_64"], + "slavenames
[webkit-changes] [209893] trunk/Source/WebCore
Title: [209893] trunk/Source/WebCore Revision 209893 Author beid...@apple.com Date 2016-12-15 17:20:24 -0800 (Thu, 15 Dec 2016) Log Message IndexedDB: Add an "IDBCursorRecord" struct. https://bugs.webkit.org/show_bug.cgi?id=165929 Reviewed by Alex Christensen. No new tests (Refactor, no behavior change). * Modules/indexeddb/server/SQLiteIDBCursor.cpp: (WebCore::IDBServer::SQLiteIDBCursor::currentData): (WebCore::IDBServer::SQLiteIDBCursor::resetAndRebindStatement): (WebCore::IDBServer::SQLiteIDBCursor::advanceUnique): (WebCore::IDBServer::SQLiteIDBCursor::internalAdvanceOnce): (WebCore::IDBServer::SQLiteIDBCursor::iterate): * Modules/indexeddb/server/SQLiteIDBCursor.h: (WebCore::IDBServer::SQLiteIDBCursor::currentKey): (WebCore::IDBServer::SQLiteIDBCursor::currentPrimaryKey): (WebCore::IDBServer::SQLiteIDBCursor::currentValue): * Modules/indexeddb/shared/IDBCursorRecord.h: Added. (WebCore::IDBCursorRecord::encode): (WebCore::IDBCursorRecord::decode): * WebCore.xcodeproj/project.pbxproj: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBCursor.cpp trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBCursor.h trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj Added Paths trunk/Source/WebCore/Modules/indexeddb/shared/IDBCursorRecord.h Diff Modified: trunk/Source/WebCore/ChangeLog (209892 => 209893) --- trunk/Source/WebCore/ChangeLog 2016-12-16 01:14:40 UTC (rev 209892) +++ trunk/Source/WebCore/ChangeLog 2016-12-16 01:20:24 UTC (rev 209893) @@ -1,3 +1,30 @@ +2016-12-15 Brady Eidson + +IndexedDB: Add an "IDBCursorRecord" struct. +https://bugs.webkit.org/show_bug.cgi?id=165929 + +Reviewed by Alex Christensen. + +No new tests (Refactor, no behavior change). + +* Modules/indexeddb/server/SQLiteIDBCursor.cpp: +(WebCore::IDBServer::SQLiteIDBCursor::currentData): +(WebCore::IDBServer::SQLiteIDBCursor::resetAndRebindStatement): +(WebCore::IDBServer::SQLiteIDBCursor::advanceUnique): +(WebCore::IDBServer::SQLiteIDBCursor::internalAdvanceOnce): +(WebCore::IDBServer::SQLiteIDBCursor::iterate): + +* Modules/indexeddb/server/SQLiteIDBCursor.h: +(WebCore::IDBServer::SQLiteIDBCursor::currentKey): +(WebCore::IDBServer::SQLiteIDBCursor::currentPrimaryKey): +(WebCore::IDBServer::SQLiteIDBCursor::currentValue): + +* Modules/indexeddb/shared/IDBCursorRecord.h: Added. +(WebCore::IDBCursorRecord::encode): +(WebCore::IDBCursorRecord::decode): + +* WebCore.xcodeproj/project.pbxproj: + 2016-12-15 Keith Rollin Refactor Document::suspend/resume Modified: trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBCursor.cpp (209892 => 209893) --- trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBCursor.cpp 2016-12-16 01:14:40 UTC (rev 209892) +++ trunk/Source/WebCore/Modules/indexeddb/server/SQLiteIDBCursor.cpp 2016-12-16 01:20:24 UTC (rev 209893) @@ -107,7 +107,7 @@ return; } -result = { m_currentKey, m_currentPrimaryKey, m_currentValue ? *m_currentValue : IDBValue() }; +result = { m_currentRecord.key, m_currentRecord.primaryKey, m_currentRecord.value ? *m_currentRecord.value : IDBValue() }; } static String buildIndexStatement(const IDBKeyRangeData& keyRange, IndexedDB::CursorDirection cursorDirection) @@ -223,7 +223,7 @@ m_statementNeedsReset = false; // If this cursor never fetched any records, we don't need to reset the statement. -if (m_currentKey.isNull()) +if (m_currentRecord.key.isNull()) return; // Otherwise update the lower key or upper key used for the cursor range. @@ -230,7 +230,7 @@ // This is so the cursor can pick up where we left off. // We might also have to change the statement from closed to open so we don't refetch the current key a second time. if (m_cursorDirection == IndexedDB::CursorDirection::Next || m_cursorDirection == IndexedDB::CursorDirection::NextNoDuplicate) { -m_currentLowerKey = m_currentKey; +m_currentLowerKey = m_currentRecord.key; if (!m_keyRange.lowerOpen) { m_keyRange.lowerOpen = true; m_keyRange.lowerKey = m_currentLowerKey; @@ -237,7 +237,7 @@ m_statement = nullptr; } } else { -m_currentUpperKey = m_currentKey; +m_currentUpperKey = m_currentRecord.key; if (!m_keyRange.upperOpen) { m_keyRange.upperOpen = true; m_keyRange.upperKey = m_currentUpperKey; @@ -316,7 +316,7 @@ bool SQLiteIDBCursor::advanceUnique() { -IDBKeyData currentKey = m_currentKey; +IDBKeyData currentKey = m_currentRecord.key; while (!m_completed) { if (!advanceOnce()) @@ -323,7 +323,7 @@ return false; // If the new current key is different from the old current key, we're done. -if (currentKey.compare(m_curre
[webkit-changes] [209892] trunk
Title: [209892] trunk Revision 209892 Author commit-qu...@webkit.org Date 2016-12-15 17:14:40 -0800 (Thu, 15 Dec 2016) Log Message Add coordinate space to event streams and streamline tests https://bugs.webkit.org/show_bug.cgi?id=165119 Patch by Megan Gardner on 2016-12-15 Reviewed by Simon Fraser. Tools: Update event streams to allow for both content and global coordinate space. Update example script to more accurately show all the available options. * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: * WebKitTestRunner/ios/HIDEventGenerator.h: * WebKitTestRunner/ios/HIDEventGenerator.mm: * WebKitTestRunner/ios/UIScriptControllerIOS.mm: (WTR::convertCoordinates): (WTR::UIScriptController::sendEventStream): LayoutTests: Streamline tests. Make them more readable and only use one function for drags. Update for new content coordinate space. * fast/events/touch/ios/long-press-then-drag-down-to-change-selected-text.html: * fast/events/touch/ios/long-press-then-drag-up-to-change-selected-text.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/events/touch/ios/long-press-then-drag-down-to-change-selected-text.html trunk/LayoutTests/fast/events/touch/ios/long-press-then-drag-up-to-change-selected-text.html trunk/Tools/ChangeLog trunk/Tools/TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl trunk/Tools/WebKitTestRunner/ios/HIDEventGenerator.h trunk/Tools/WebKitTestRunner/ios/HIDEventGenerator.mm trunk/Tools/WebKitTestRunner/ios/UIScriptControllerIOS.mm Diff Modified: trunk/LayoutTests/ChangeLog (209891 => 209892) --- trunk/LayoutTests/ChangeLog 2016-12-16 01:06:02 UTC (rev 209891) +++ trunk/LayoutTests/ChangeLog 2016-12-16 01:14:40 UTC (rev 209892) @@ -1,3 +1,16 @@ +2016-12-15 Megan Gardner + +Add coordinate space to event streams and streamline tests +https://bugs.webkit.org/show_bug.cgi?id=165119 + +Reviewed by Simon Fraser. + +Streamline tests. Make them more readable and only use one function for drags. +Update for new content coordinate space. + +* fast/events/touch/ios/long-press-then-drag-down-to-change-selected-text.html: +* fast/events/touch/ios/long-press-then-drag-up-to-change-selected-text.html: + 2016-12-15 Ryan Haddad Marking js/dom/global-constructors-attributes.html as failing on ElCapitan WK1. Modified: trunk/LayoutTests/fast/events/touch/ios/long-press-then-drag-down-to-change-selected-text.html (209891 => 209892) --- trunk/LayoutTests/fast/events/touch/ios/long-press-then-drag-down-to-change-selected-text.html 2016-12-16 01:06:02 UTC (rev 209891) +++ trunk/LayoutTests/fast/events/touch/ios/long-press-then-drag-down-to-change-selected-text.html 2016-12-16 01:14:40 UTC (rev 209892) @@ -17,8 +17,8 @@ }); })();` } - -function getDragDownOneScript() + +function getDragScript(startX, startY, endX, endY) { return ` (function() { @@ -27,6 +27,7 @@ { interpolate : "linear", timestep: 0.1, +coordinateSpace : "global", startEvent : { inputType : "hand", timeOffset : 0, @@ -35,8 +36,8 @@ inputType : "finger", phase : "began", id : 1, -x : 72, -y : 140, +x : ${startX}, +y : ${startY}, pressure : 0 } ] @@ -49,8 +50,8 @@ inputType : "finger", phase : "moved", id : 1, -x : 72, -y : 150, +x : ${endX}, +y : ${endY}, pressure : 0 } ] @@ -61,179 +62,6 @@ uiController.uiScriptComplete(); })();` } - -function getDragDownTwoScript() -{ -return ` -(function() { - var eventStream = { - events : [ - { - interpolate : "linear", - timestep: 0.1, - startEvent : { - inputType : "hand", - timeOffset : 0, - touches : [ - { - inputType : "finger", - phase : "began", - id : 1, - x : 72, - y : 150, - pressure : 0 - } - ] - }, - endEvent : { - inputType : "hand", - timeOffset : 0.5, -
[webkit-changes] [209891] trunk
Title: [209891] trunk Revision 209891 Author keith_mil...@apple.com Date 2016-12-15 17:06:02 -0800 (Thu, 15 Dec 2016) Log Message Wasm should not create empty unlinked callsites https://bugs.webkit.org/show_bug.cgi?id=165933 Reviewed by Mark Lam. JSTests: * wasm/function-tests/dead-call.js: Added. Source/_javascript_Core: Wasm would create holes in the unlinked callsite vector if B3 was able to eliminate the callsite. * wasm/WasmB3IRGenerator.cpp: (JSC::Wasm::B3IRGenerator::addCall): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp Added Paths trunk/JSTests/wasm/function-tests/dead-call.js Diff Modified: trunk/JSTests/ChangeLog (209890 => 209891) --- trunk/JSTests/ChangeLog 2016-12-16 01:04:07 UTC (rev 209890) +++ trunk/JSTests/ChangeLog 2016-12-16 01:06:02 UTC (rev 209891) @@ -1,3 +1,12 @@ +2016-12-15 Keith Miller + +Wasm should not create empty unlinked callsites +https://bugs.webkit.org/show_bug.cgi?id=165933 + +Reviewed by Mark Lam. + +* wasm/function-tests/dead-call.js: Added. + 2016-12-15 JF Bastien WebAssembly: improve compilation error messages Added: trunk/JSTests/wasm/function-tests/dead-call.js (0 => 209891) --- trunk/JSTests/wasm/function-tests/dead-call.js (rev 0) +++ trunk/JSTests/wasm/function-tests/dead-call.js 2016-12-16 01:06:02 UTC (rev 209891) @@ -0,0 +1,25 @@ +import * as assert from '../assert.js'; +import Builder from '../Builder.js'; + +const builder = (new Builder()) + .Type().End() + .Function().End() + .Export() + .Function("dead-call") + .End() + .Code() + .Function("crash", { params: [], ret: "i32" }) + .Unreachable() + .End() + + .Function("dead-call", { params: [], ret: "i32" }) + .I32Const(0) + .If("i32", b => b.Call(0).Return()) + .I32Const(1) + .End() + + .End(); + +const bin = builder.WebAssembly().get(); +const module = new WebAssembly.Module(bin); +const instance = new WebAssembly.Instance(module); Modified: trunk/Source/_javascript_Core/ChangeLog (209890 => 209891) --- trunk/Source/_javascript_Core/ChangeLog 2016-12-16 01:04:07 UTC (rev 209890) +++ trunk/Source/_javascript_Core/ChangeLog 2016-12-16 01:06:02 UTC (rev 209891) @@ -1,3 +1,16 @@ +2016-12-15 Keith Miller + +Wasm should not create empty unlinked callsites +https://bugs.webkit.org/show_bug.cgi?id=165933 + +Reviewed by Mark Lam. + +Wasm would create holes in the unlinked callsite vector if B3 was able to +eliminate the callsite. + +* wasm/WasmB3IRGenerator.cpp: +(JSC::Wasm::B3IRGenerator::addCall): + 2016-12-15 JF Bastien WebAssembly: improve compilation error messages Modified: trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp (209890 => 209891) --- trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp 2016-12-16 01:04:07 UTC (rev 209890) +++ trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp 2016-12-16 01:06:02 UTC (rev 209891) @@ -700,8 +700,6 @@ Type returnType = signature->returnType; -size_t callIndex = m_unlinkedWasmToWasmCalls.size(); -m_unlinkedWasmToWasmCalls.grow(callIndex + 1); result = wasmCallingConvention().setupCall(m_proc, m_currentBlock, Origin(), args, toB3Type(returnType), [&] (PatchpointValue* patchpoint) { patchpoint->effects.writesPinned = true; @@ -713,7 +711,7 @@ CCallHelpers::Call call = jit.call(); jit.addLinkTask([=] (LinkBuffer& linkBuffer) { -m_unlinkedWasmToWasmCalls[callIndex] = { linkBuffer.locationOf(call), functionIndex }; +m_unlinkedWasmToWasmCalls.append({ linkBuffer.locationOf(call), functionIndex }); }); }); }); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209890] trunk/Source/WebCore
Title: [209890] trunk/Source/WebCore Revision 209890 Author krol...@apple.com Date 2016-12-15 17:04:07 -0800 (Thu, 15 Dec 2016) Log Message Refactor Document::suspend/resume https://bugs.webkit.org/show_bug.cgi?id=165921 Reviewed by Chris Dumez. Update Document::suspend to call Document::suspendScheduledTasks rather than duplicating the latter's code within itself. Similar treatment of Document::resume and Document::resumeScheduledTasks. No new tests -- no new functionality, just refactoring existing code. * dom/Document.cpp: (WebCore::Document::suspend): (WebCore::Document::resume): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (209889 => 209890) --- trunk/Source/WebCore/ChangeLog 2016-12-16 01:02:49 UTC (rev 209889) +++ trunk/Source/WebCore/ChangeLog 2016-12-16 01:04:07 UTC (rev 209890) @@ -1,3 +1,20 @@ +2016-12-15 Keith Rollin + +Refactor Document::suspend/resume +https://bugs.webkit.org/show_bug.cgi?id=165921 + +Reviewed by Chris Dumez. + +Update Document::suspend to call Document::suspendScheduledTasks +rather than duplicating the latter's code within itself. Similar +treatment of Document::resume and Document::resumeScheduledTasks. + +No new tests -- no new functionality, just refactoring existing code. + +* dom/Document.cpp: +(WebCore::Document::suspend): +(WebCore::Document::resume): + 2016-12-15 Alex Christensen Remove flex and bison build dependencies; commit generated XPath parser Modified: trunk/Source/WebCore/dom/Document.cpp (209889 => 209890) --- trunk/Source/WebCore/dom/Document.cpp 2016-12-16 01:02:49 UTC (rev 209889) +++ trunk/Source/WebCore/dom/Document.cpp 2016-12-16 01:04:07 UTC (rev 209890) @@ -4593,8 +4593,7 @@ view->compositor().cancelCompositingLayerUpdate(); } -suspendScriptedAnimationControllerCallbacks(); -suspendActiveDOMObjects(reason); +suspendScheduledTasks(reason); ASSERT(m_frame); m_frame->clearTimers(); @@ -4625,8 +4624,7 @@ m_frame->loader().client().dispatchDidBecomeFrameset(isFrameSet()); m_frame->animation().resumeAnimationsForDocument(this); -resumeActiveDOMObjects(reason); -resumeScriptedAnimationControllerCallbacks(); +resumeScheduledTasks(reason); m_visualUpdatesAllowed = true; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209889] trunk/LayoutTests
Title: [209889] trunk/LayoutTests Revision 209889 Author ryanhad...@apple.com Date 2016-12-15 17:02:49 -0800 (Thu, 15 Dec 2016) Log Message Marking js/dom/global-constructors-attributes.html as failing on ElCapitan WK1. https://bugs.webkit.org/show_bug.cgi?id=165934 Unreviewed test gardening. * platform/mac-wk1/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac-wk1/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (209888 => 209889) --- trunk/LayoutTests/ChangeLog 2016-12-16 01:00:12 UTC (rev 209888) +++ trunk/LayoutTests/ChangeLog 2016-12-16 01:02:49 UTC (rev 209889) @@ -1,3 +1,12 @@ +2016-12-15 Ryan Haddad + +Marking js/dom/global-constructors-attributes.html as failing on ElCapitan WK1. +https://bugs.webkit.org/show_bug.cgi?id=165934 + +Unreviewed test gardening. + +* platform/mac-wk1/TestExpectations: + 2016-12-15 Simon Fraser fast/visual-viewport/ios/zoomed-focus-in-fixed.html always times out Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (209888 => 209889) --- trunk/LayoutTests/platform/mac-wk1/TestExpectations 2016-12-16 01:00:12 UTC (rev 209888) +++ trunk/LayoutTests/platform/mac-wk1/TestExpectations 2016-12-16 01:02:49 UTC (rev 209889) @@ -264,7 +264,7 @@ webkit.org/b/160227 [ ElCapitan Debug ] inspector/memory/tracking.html [ Pass Crash ] -[ Yosemite ] js/dom/global-constructors-attributes.html [ Failure ] +webkit.org/b/165934 [ ElCapitan Yosemite ] js/dom/global-constructors-attributes.html [ Failure ] # rdar://problem/27723718 [ Sierra+ ] imported/blink/compositing/child-transform-with-anchor-point.html [ ImageOnlyFailure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209888] trunk/LayoutTests
Title: [209888] trunk/LayoutTests Revision 209888 Author simon.fra...@apple.com Date 2016-12-15 17:00:12 -0800 (Thu, 15 Dec 2016) Log Message fast/visual-viewport/ios/zoomed-focus-in-fixed.html always times out Skip this test, which relies on touch events. * platform/ios-simulator/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-simulator/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (209887 => 209888) --- trunk/LayoutTests/ChangeLog 2016-12-16 00:46:27 UTC (rev 209887) +++ trunk/LayoutTests/ChangeLog 2016-12-16 01:00:12 UTC (rev 209888) @@ -1,5 +1,13 @@ 2016-12-15 Simon Fraser +fast/visual-viewport/ios/zoomed-focus-in-fixed.html always times out + +Skip this test, which relies on touch events. + +* platform/ios-simulator/TestExpectations: + +2016-12-15 Simon Fraser + Fix flakiness of fast/visual-viewport/ios/zoomed-focus-in-fixed.html https://bugs.webkit.org/show_bug.cgi?id=165930 Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (209887 => 209888) --- trunk/LayoutTests/platform/ios-simulator/TestExpectations 2016-12-16 00:46:27 UTC (rev 209887) +++ trunk/LayoutTests/platform/ios-simulator/TestExpectations 2016-12-16 01:00:12 UTC (rev 209888) @@ -140,6 +140,7 @@ # No touch events fast/events/touch [ Skip ] fast/shadow-dom/touch-event-ios.html [ Skip ] +fast/visual-viewport/ios/zoomed-focus-in-fixed.html [ Skip ] http/tests/quicklook/at-import-stylesheet-blocked.html [ Skip ] http/tests/quicklook/base-url-blocked.html [ Skip ] http/tests/quicklook/cross-origin-iframe-blocked.html [ Skip ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209887] trunk/LayoutTests
Title: [209887] trunk/LayoutTests Revision 209887 Author simon.fra...@apple.com Date 2016-12-15 16:46:27 -0800 (Thu, 15 Dec 2016) Log Message Fix flakiness of fast/visual-viewport/ios/zoomed-focus-in-fixed.html https://bugs.webkit.org/show_bug.cgi?id=165930 Reviewed by Tim Horton. The test zooms when focussing the input, which completes after the keyboard shows, so we need to wait for zooming to finish using the uiController.didEndZoomingCallback. * fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt: * fast/visual-viewport/ios/zoomed-focus-in-fixed.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed.html Diff Modified: trunk/LayoutTests/ChangeLog (209886 => 209887) --- trunk/LayoutTests/ChangeLog 2016-12-16 00:06:19 UTC (rev 209886) +++ trunk/LayoutTests/ChangeLog 2016-12-16 00:46:27 UTC (rev 209887) @@ -1,3 +1,16 @@ +2016-12-15 Simon Fraser + +Fix flakiness of fast/visual-viewport/ios/zoomed-focus-in-fixed.html +https://bugs.webkit.org/show_bug.cgi?id=165930 + +Reviewed by Tim Horton. + +The test zooms when focussing the input, which completes after the keyboard shows, +so we need to wait for zooming to finish using the uiController.didEndZoomingCallback. + +* fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt: +* fast/visual-viewport/ios/zoomed-focus-in-fixed.html: + 2016-12-15 Myles C. Maxfield [Cocoa] Implement font-synthesis: small-caps Modified: trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt (209886 => 209887) --- trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt 2016-12-16 00:06:19 UTC (rev 209886) +++ trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt 2016-12-16 00:46:27 UTC (rev 209887) @@ -1,3 +1,3 @@ -Layout viewport: {"top":746.703125,"right":320,"bottom":1314.703125,"left":0,"width":320,"height":568} -Visual viewport: {"top":747,"right":220,"bottom":1138,"left":0,"width":220,"height":391} +Layout viewport: {"top":659.734375,"right":320,"bottom":1227.734375,"left":0,"width":320,"height":568} +Visual viewport: {"top":660,"right":220,"bottom":1051,"left":0,"width":220,"height":391} Modified: trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed.html (209886 => 209887) --- trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed.html 2016-12-16 00:06:19 UTC (rev 209886) +++ trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed.html 2016-12-16 00:46:27 UTC (rev 209887) @@ -31,7 +31,7 @@ function getFocusInputUIScript(x, y) { return `(function() { -uiController.didShowKeyboardCallback = function() { +uiController.didEndZoomingCallback = function() { uiController.uiScriptComplete(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209886] branches/safari-602-branch
Title: [209886] branches/safari-602-branch Revision 209886 Author bshaf...@apple.com Date 2016-12-15 16:06:19 -0800 (Thu, 15 Dec 2016) Log Message Merged r204664. rdar://problem/29690089 Modified Paths branches/safari-602-branch/ChangeLog branches/safari-602-branch/LayoutTests/ChangeLog branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt branches/safari-602-branch/Source/WebCore/ChangeLog branches/safari-602-branch/Source/WebCore/bindings/js/JSHTMLCanvasElementCustom.cpp branches/safari-602-branch/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm Added Paths branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html Diff Modified: branches/safari-602-branch/ChangeLog (209885 => 209886) --- branches/safari-602-branch/ChangeLog 2016-12-16 00:04:50 UTC (rev 209885) +++ branches/safari-602-branch/ChangeLog 2016-12-16 00:06:19 UTC (rev 209886) @@ -1,5 +1,24 @@ 2016-12-15 Babak Shafiei +Merge r204664. + +2016-08-19 Dean Jackson + +Implement preferLowPowerToHighPerformance for WebGL +https://bugs.webkit.org/show_bug.cgi?id=161017 + + +Reviewed by Myles Maxfield. + +A manual test that creates contexts with and without preferLowPowerToHighPerformance +to see what is used. This has to be manual because it depends on the hardware +configuration, and we don't have a way to detect it up-front. Also, if the +code was failing, it would be the same result as on a single GPU system. + +* ManualTests/webgl-preferLowPowerToHighPerformance.html: Added. + +2016-12-15 Babak Shafiei + Roll out r204664. 2016-12-15 Babak Shafiei Modified: branches/safari-602-branch/LayoutTests/ChangeLog (209885 => 209886) --- branches/safari-602-branch/LayoutTests/ChangeLog 2016-12-16 00:04:50 UTC (rev 209885) +++ branches/safari-602-branch/LayoutTests/ChangeLog 2016-12-16 00:06:19 UTC (rev 209886) @@ -1,5 +1,22 @@ 2016-12-15 Babak Shafiei +Merge r204664. + +2016-08-19 Dean Jackson + +Implement preferLowPowerToHighPerformance for WebGL +https://bugs.webkit.org/show_bug.cgi?id=161017 + + +Reviewed by Myles Maxfield. + +Now that we implement preferLowPowerToHighPerformance we can +retain its value in the context creation attributes object. + +* fast/canvas/webgl/context-creation-attributes-expected.txt: + +2016-12-15 Babak Shafiei + Merge r204618. 2016-08-18 Dean Jackson Modified: branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt (209885 => 209886) --- branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt 2016-12-16 00:04:50 UTC (rev 209885) +++ branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt 2016-12-16 00:06:19 UTC (rev 209886) @@ -2,5 +2,5 @@ {"alpha":true,"depth":true,"stencil":false,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":false,"failIfMajorPerformanceCaveat":false} {"alpha":true,"depth":true,"stencil":true,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":false,"failIfMajorPerformanceCaveat":false} +{"alpha":true,"depth":true,"stencil":false,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":true,"failIfMajorPerformanceCaveat":false} {"alpha":true,"depth":true,"stencil":false,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":false,"failIfMajorPerformanceCaveat":false} -{"alpha":true,"depth":true,"stencil":false,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":false,"failIfMajorPerformanceCaveat":false} Copied: branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html (from rev 204664, trunk/ManualTests/webgl-preferLowPowerToHighPerformance.html) (0 => 209886) --- branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html (rev 0) +++ branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html 2016-12-16 00:06:19 UTC (rev 209886) @@ -0,0 +1,38 @@ + +function createAndDescribeContext(msg, parameters) +{ +var canvas = document.createElement("canvas"); +var gl = canvas.getContext("webgl", parameters); +var ext = gl.getExtension("WEBGL_debug_renderer_info"); + +var header = document.createElement("p"); +header.textContent = msg; +document.body.appendChild(header); + +var result = document.createElement("pre"); +result.textContent = "UNMASKED_VENDOR_WEBGL is " + gl.getParameter(ext.UNMASKED_VENDOR_WEBGL) + "\n"; +r
[webkit-changes] [209885] branches/safari-602-branch
Title: [209885] branches/safari-602-branch Revision 209885 Author bshaf...@apple.com Date 2016-12-15 16:04:50 -0800 (Thu, 15 Dec 2016) Log Message Merged r204618. rdar://problem/29690089 Modified Paths branches/safari-602-branch/LayoutTests/ChangeLog branches/safari-602-branch/Source/WebCore/ChangeLog branches/safari-602-branch/Source/WebCore/html/canvas/WebGLContextAttributes.cpp branches/safari-602-branch/Source/WebCore/html/canvas/WebGLContextAttributes.h branches/safari-602-branch/Source/WebCore/html/canvas/WebGLContextAttributes.idl branches/safari-602-branch/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp branches/safari-602-branch/Source/WebCore/platform/graphics/GraphicsContext3D.h Added Paths branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes.html Diff Modified: branches/safari-602-branch/LayoutTests/ChangeLog (209884 => 209885) --- branches/safari-602-branch/LayoutTests/ChangeLog 2016-12-15 23:58:35 UTC (rev 209884) +++ branches/safari-602-branch/LayoutTests/ChangeLog 2016-12-16 00:04:50 UTC (rev 209885) @@ -1,5 +1,23 @@ 2016-12-15 Babak Shafiei +Merge r204618. + +2016-08-18 Dean Jackson + +Support passing preferLowPowerToHighPerformance and failIfMajorPerformanceCaveat +https://bugs.webkit.org/show_bug.cgi?id=160982 + + +Reviewed by Simon Fraser. + +Very simple test that creates some WebGL contexts with various +creation attributes and outputs the result. + +* fast/canvas/webgl/context-creation-attributes-expected.txt: Added. +* fast/canvas/webgl/context-creation-attributes.html: Added. + +2016-12-15 Babak Shafiei + Roll out r204664. 2016-12-15 Babak Shafiei Copied: branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt (from rev 204618, trunk/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt) (0 => 209885) --- branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt (rev 0) +++ branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt 2016-12-16 00:04:50 UTC (rev 209885) @@ -0,0 +1,6 @@ +Note that some of the values tested here might not be supported, and thus should return the default values. + +{"alpha":true,"depth":true,"stencil":false,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":false,"failIfMajorPerformanceCaveat":false} +{"alpha":true,"depth":true,"stencil":true,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":false,"failIfMajorPerformanceCaveat":false} +{"alpha":true,"depth":true,"stencil":false,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":false,"failIfMajorPerformanceCaveat":false} +{"alpha":true,"depth":true,"stencil":false,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"preferLowPowerToHighPerformance":false,"failIfMajorPerformanceCaveat":false} Copied: branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes.html (from rev 204618, trunk/LayoutTests/fast/canvas/webgl/context-creation-attributes.html) (0 => 209885) --- branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes.html (rev 0) +++ branches/safari-602-branch/LayoutTests/fast/canvas/webgl/context-creation-attributes.html 2016-12-16 00:04:50 UTC (rev 209885) @@ -0,0 +1,38 @@ + +if (window.testRunner) +window.testRunner.dumpAsText(); + +function describe(object) { +result = {}; +if (typeof object === "function") +object = object.prototype; +for (let o = object; o; o = o.__proto__) { +for (let name of Object.getOwnPropertyNames(o)) { +result[name] = object[name]; +} +} +return result; +} + +function testContextCreation(parameters) +{ +var canvas = document.createElement("canvas"); +var gl = canvas.getContext("webgl", parameters || {}); +var attributes = gl.getContextAttributes(); +var result = document.createElement("pre"); +result.textContent = JSON.stringify(describe(attributes)); +document.body.appendChild(result); +} + +function run() { +testContextCreation({}); +testContextCreation({stencil: true}); +testContextCreation({preferLowPowerToHighPerformance: true}); +testContextCreation({failIfMajorPerformanceCaveat: true}); +} + +window.addEventListener("load", run, false); + + +Note that some of the values tested here might not be supported, and thus should return the default values. + \ No newline at end of file Modified: branches/safari-602-branch/Source/WebCore/ChangeLog (20
[webkit-changes] [209884] branches/safari-602-branch
Title: [209884] branches/safari-602-branch Revision 209884 Author bshaf...@apple.com Date 2016-12-15 15:58:35 -0800 (Thu, 15 Dec 2016) Log Message Roll out r204664. rdar://problem/29690089 Modified Paths branches/safari-602-branch/ChangeLog branches/safari-602-branch/LayoutTests/ChangeLog branches/safari-602-branch/Source/WebCore/ChangeLog branches/safari-602-branch/Source/WebCore/bindings/js/JSHTMLCanvasElementCustom.cpp branches/safari-602-branch/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm Removed Paths branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html Diff Modified: branches/safari-602-branch/ChangeLog (209883 => 209884) --- branches/safari-602-branch/ChangeLog 2016-12-15 23:53:24 UTC (rev 209883) +++ branches/safari-602-branch/ChangeLog 2016-12-15 23:58:35 UTC (rev 209884) @@ -1,5 +1,9 @@ 2016-12-15 Babak Shafiei +Roll out r204664. + +2016-12-15 Babak Shafiei + Merge r204664. 2016-08-19 Dean Jackson Modified: branches/safari-602-branch/LayoutTests/ChangeLog (209883 => 209884) --- branches/safari-602-branch/LayoutTests/ChangeLog 2016-12-15 23:53:24 UTC (rev 209883) +++ branches/safari-602-branch/LayoutTests/ChangeLog 2016-12-15 23:58:35 UTC (rev 209884) @@ -1,5 +1,9 @@ 2016-12-15 Babak Shafiei +Roll out r204664. + +2016-12-15 Babak Shafiei + Merge r204664. 2016-08-19 Dean Jackson Deleted: branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html (209883 => 209884) --- branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html 2016-12-15 23:53:24 UTC (rev 209883) +++ branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html 2016-12-15 23:58:35 UTC (rev 209884) @@ -1,38 +0,0 @@ - -function createAndDescribeContext(msg, parameters) -{ -var canvas = document.createElement("canvas"); -var gl = canvas.getContext("webgl", parameters); -var ext = gl.getExtension("WEBGL_debug_renderer_info"); - -var header = document.createElement("p"); -header.textContent = msg; -document.body.appendChild(header); - -var result = document.createElement("pre"); -result.textContent = "UNMASKED_VENDOR_WEBGL is " + gl.getParameter(ext.UNMASKED_VENDOR_WEBGL) + "\n"; -result.textContent += "UNMASKED_RENDERER_WEBGL is " + gl.getParameter(ext.UNMASKED_RENDERER_WEBGL); -document.body.appendChild(result); -} - -function run() -{ -createAndDescribeContext("With preferLowPowerToHighPerformance", {preferLowPowerToHighPerformance: true}); -createAndDescribeContext("Without preferLowPowerToHighPerformance", {}); -} - -window.addEventListener("load", run, false); - - -This is a manual test, since it relies on hardware configurations. It creates two -WebGL contexts. It first asks for a context with preferLowPowerToHighPerformance -set to true, and then for a context with the default value (false). - - -Unfortunately there isn't a completely reliable way to know if this test passed. -On a system with both an integrated and discrete GPU, assuming that the system -is configured to prefer the integrated GPU, and no other apps are running -that might cause the discrete GPU to be active, the two renderers should be different. -Also, if they are different, then the first one should be the lower power model -(i.e. the integrated card). - \ No newline at end of file Modified: branches/safari-602-branch/Source/WebCore/ChangeLog (209883 => 209884) --- branches/safari-602-branch/Source/WebCore/ChangeLog 2016-12-15 23:53:24 UTC (rev 209883) +++ branches/safari-602-branch/Source/WebCore/ChangeLog 2016-12-15 23:58:35 UTC (rev 209884) @@ -1,5 +1,9 @@ 2016-12-15 Babak Shafiei +Roll out r204664. + +2016-12-15 Babak Shafiei + Merge r204664. 2016-08-19 Dean Jackson Modified: branches/safari-602-branch/Source/WebCore/bindings/js/JSHTMLCanvasElementCustom.cpp (209883 => 209884) --- branches/safari-602-branch/Source/WebCore/bindings/js/JSHTMLCanvasElementCustom.cpp 2016-12-15 23:53:24 UTC (rev 209883) +++ branches/safari-602-branch/Source/WebCore/bindings/js/JSHTMLCanvasElementCustom.cpp 2016-12-15 23:58:35 UTC (rev 209884) @@ -62,8 +62,7 @@ dictionary.tryGetProperty("antialias", graphicsAttrs.antialias); dictionary.tryGetProperty("premultipliedAlpha", graphicsAttrs.premultipliedAlpha); dictionary.tryGetProperty("preserveDrawingBuffer", graphicsAttrs.preserveDrawingBuffer); -dictionary.tryGetProperty("preferLowPowerToHighPerformance", graphicsAttrs.preferLowPowerToHighPerformance); - + attrs = WebGLContextAttributes::create(graphicsAttrs); } #endif Modified: branches/safari-602-branch/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm (209883 => 209884) --- branches/safari-602-branch/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm 2016-12-15 23:53:24 UTC (rev 209883) +++ br
[webkit-changes] [209882] trunk/Source/WebInspectorUI
Title: [209882] trunk/Source/WebInspectorUI Revision 209882 Author mattba...@apple.com Date 2016-12-15 15:52:42 -0800 (Thu, 15 Dec 2016) Log Message Web Inspector: console search bar jumps, behaves poorly at narrow widths https://bugs.webkit.org/show_bug.cgi?id=164047 Reviewed by Timothy Hatcher. At narrow widths the find banner behaves poorly in the split console toolbar. It should work like the main content browser, appearing below the toolbar when Command-F is pressed and either the split console or quick console prompt has the focus. * UserInterface/Base/Main.js: (WebInspector.contentLoaded): Enable split content browser find banner. * UserInterface/Views/ContentBrowser.js: (WebInspector.ContentBrowser.prototype.showFindBanner): Check for custom find banner support at runtime. (WebInspector.ContentBrowser.prototype._findBannerDidShow): (WebInspector.ContentBrowser.prototype._findBannerDidHide): Refresh search results when banner is shown/hidden, instead of relying on toggling the "showing-find-banner" class name for everything. (WebInspector.ContentBrowser.prototype.handleFindEvent): Deleted. Renamed `showFindBanner`. * UserInterface/Views/ContentView.js: (WebInspector.ContentView.prototype.get supportsCustomFindBanner): (WebInspector.ContentView.prototype.showCustomFindBanner): Custom find banner support (used by LogContentView). * UserInterface/Views/LogContentView.js: (WebInspector.LogContentView): (WebInspector.LogContentView.prototype.get supportsSearch): (WebInspector.LogContentView.prototype.get numberOfSearchResults): (WebInspector.LogContentView.prototype.get hasPerformedSearch): Cleanup. (WebInspector.LogContentView.prototype.get supportsCustomFindBanner): Use toolbar item find banner when showing Console tab. (WebInspector.LogContentView.prototype.findBannerRevealPreviousResult): (WebInspector.LogContentView.prototype.findBannerRevealNextResult): (WebInspector.LogContentView.prototype._isMessageVisible): (WebInspector.LogContentView.prototype._visibleMessageElements): (WebInspector.LogContentView.prototype._logCleared): (WebInspector.LogContentView.prototype._filterMessageElements): (WebInspector.LogContentView.prototype.findBannerPerformSearch): (WebInspector.LogContentView.prototype.findBannerSearchCleared): (WebInspector.LogContentView.prototype.performSearch): Support both the standard and custom (toolbar item) find banners. (WebInspector.LogContentView.prototype.searchCleared): Refresh search results. (WebInspector.LogContentView.prototype._highlightRanges): Correct spelling: _selectedSearchMathIsValid -> _selectedSearchMatchIsValid. (WebInspector.LogContentView.prototype.get searchInProgress): Deleted. Override ContentView.prototype.hasPerformedSearch instead. (WebInspector.LogContentView.prototype.handleFindEvent): Deleted. Replaced by `showCustomFindBanner`. (WebInspector.LogContentView.prototype.highlightPreviousSearchMatch): Deleted. Absorbed by findBannerRevealPreviousResult. (WebInspector.LogContentView.prototype.highlightNextSearchMatch): Deleted. Absorbed by findBannerRevealNextResult. (WebInspector.LogContentView.prototype._performSearch): Deleted. Override ContentView.prototype.performSearch instead. * UserInterface/Views/Main.css: (#split-content-browser > .navigation-bar :matches(.find-banner, .find-banner + .divider)): Hide the toolbar banner and divider. Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Base/Main.js trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowser.js trunk/Source/WebInspectorUI/UserInterface/Views/ContentView.js trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js trunk/Source/WebInspectorUI/UserInterface/Views/Main.css Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (209881 => 209882) --- trunk/Source/WebInspectorUI/ChangeLog 2016-12-15 23:42:54 UTC (rev 209881) +++ trunk/Source/WebInspectorUI/ChangeLog 2016-12-15 23:52:42 UTC (rev 209882) @@ -1,3 +1,73 @@ +2016-12-15 Matt Baker + +Web Inspector: console search bar jumps, behaves poorly at narrow widths +https://bugs.webkit.org/show_bug.cgi?id=164047 + + +Reviewed by Timothy Hatcher. + +At narrow widths the find banner behaves poorly in the split console +toolbar. It should work like the main content browser, appearing below +the toolbar when Command-F is pressed and either the split console or +quick console prompt has the focus. + +* UserInterface/Base/Main.js: +(WebInspector.contentLoaded): +Enable split content browser find banner. + +* UserInterface/Views/ContentBrowser.js: +(WebInspector.ContentBrowser.prototype.showFindBanner): +Check for custom find banner support at runtime. +(WebInspector.ContentBrowser.prototype._findBannerDidShow): +(WebInspector.ContentBrowser.prototype._findBannerDidHide): +Refresh search results when banner is shown/hidden, instead of
[webkit-changes] [209883] trunk
Title: [209883] trunk Revision 209883 Author achristen...@apple.com Date 2016-12-15 15:53:24 -0800 (Thu, 15 Dec 2016) Log Message Remove flex and bison build dependencies; commit generated XPath parser https://bugs.webkit.org/show_bug.cgi?id=165783 Reviewed by Brent Fulgham. .: * Source/cmake/WebKitCommon.cmake: * Source/cmake/WebKitMacros.cmake: Source/WebCore: flex and bison are annoying to install and use, especially on Windows. Since only XPathGrammar uses them and that's not actively developed, let's just check in the one generated file and make building WebKit easier forever! * CMakeLists.txt: * DerivedSources.make: * WebCore.xcodeproj/project.pbxproj: * css/makegrammar.pl: Removed. * xml/XPathGrammar.cpp: Added. (xpathyylex): (xpathyyerror): (yysyntax_error): * xml/XPathGrammar.h: Added. * xml/XPathGrammar.y: Rename TEXT to TEXT_ to fix a build error on Windows. TEXT is already defined. Modified Paths trunk/ChangeLog trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/DerivedSources.make trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/xml/XPathGrammar.y trunk/Source/WebCore/xml/XPathParser.cpp trunk/Source/cmake/WebKitCommon.cmake trunk/Source/cmake/WebKitMacros.cmake Added Paths trunk/Source/WebCore/xml/XPathGrammar.cpp trunk/Source/WebCore/xml/XPathGrammar.h Removed Paths trunk/Source/WebCore/css/makegrammar.pl Diff Modified: trunk/ChangeLog (209882 => 209883) --- trunk/ChangeLog 2016-12-15 23:52:42 UTC (rev 209882) +++ trunk/ChangeLog 2016-12-15 23:53:24 UTC (rev 209883) @@ -1,3 +1,13 @@ +2016-12-15 Alex Christensen + +Remove flex and bison build dependencies; commit generated XPath parser +https://bugs.webkit.org/show_bug.cgi?id=165783 + +Reviewed by Brent Fulgham. + +* Source/cmake/WebKitCommon.cmake: +* Source/cmake/WebKitMacros.cmake: + 2016-12-10 Konstantin Tokarev [cmake] Include WTF, JSC, and WebCore headers automatically to targers using them Modified: trunk/Source/WebCore/CMakeLists.txt (209882 => 209883) --- trunk/Source/WebCore/CMakeLists.txt 2016-12-15 23:52:42 UTC (rev 209882) +++ trunk/Source/WebCore/CMakeLists.txt 2016-12-15 23:53:24 UTC (rev 209883) @@ -2873,6 +2873,7 @@ xml/XPathExpression.cpp xml/XPathExpressionNode.cpp xml/XPathFunctions.cpp +xml/XPathGrammar.cpp xml/XPathNSResolver.cpp xml/XPathNodeSet.cpp xml/XPathParser.cpp @@ -3675,9 +3676,6 @@ list(APPEND WebCore_DERIVED_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/PlugInsResourcesData.cpp) ADD_SOURCE_WEBCORE_DERIVED_DEPENDENCIES(${WEBCORE_DIR}/css/StyleResolver.cpp PlugInsResourcesData.cpp PlugInsResources.h) -GENERATE_GRAMMAR(xpathyy ${WEBCORE_DIR}/xml/XPathGrammar.y ${DERIVED_SOURCES_WEBCORE_DIR}/XPathGrammar.h ${DERIVED_SOURCES_WEBCORE_DIR}/XPathGrammar.cpp "") -list(APPEND WebCore_DERIVED_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/XPathGrammar.cpp) - set(FEATURE_DEFINES_JAVASCRIPT "LANGUAGE_JAVASCRIPT ${FEATURE_DEFINES_WITH_SPACE_SEPARATOR}") list(APPEND WebCoreTestSupport_IDL_FILES ${DERIVED_SOURCES_WEBCORE_DIR}/InternalSettingsGenerated.idl) Modified: trunk/Source/WebCore/ChangeLog (209882 => 209883) --- trunk/Source/WebCore/ChangeLog 2016-12-15 23:52:42 UTC (rev 209882) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 23:53:24 UTC (rev 209883) @@ -1,3 +1,25 @@ +2016-12-15 Alex Christensen + +Remove flex and bison build dependencies; commit generated XPath parser +https://bugs.webkit.org/show_bug.cgi?id=165783 + +Reviewed by Brent Fulgham. + +flex and bison are annoying to install and use, especially on Windows. +Since only XPathGrammar uses them and that's not actively developed, let's just check in the one generated file +and make building WebKit easier forever! + +* CMakeLists.txt: +* DerivedSources.make: +* WebCore.xcodeproj/project.pbxproj: +* css/makegrammar.pl: Removed. +* xml/XPathGrammar.cpp: Added. +(xpathyylex): +(xpathyyerror): +(yysyntax_error): +* xml/XPathGrammar.h: Added. +* xml/XPathGrammar.y: Rename TEXT to TEXT_ to fix a build error on Windows. TEXT is already defined. + 2016-12-15 Brady Eidson Enhance some of the logging statements just added for IndexedDB Operation scheduling. Modified: trunk/Source/WebCore/DerivedSources.make (209882 => 209883) --- trunk/Source/WebCore/DerivedSources.make 2016-12-15 23:52:42 UTC (rev 209882) +++ trunk/Source/WebCore/DerivedSources.make 2016-12-15 23:53:24 UTC (rev 209883) @@ -909,7 +909,6 @@ MathMLElementTypeHelpers.h \ MathMLNames.cpp \ MathMLNames.h \ -XPathGrammar.cpp \ # # @@ -1022,22 +1021,6 @@ # -# Path to bison - -ifeq ($(OS),MACOS) -BISON=$(shell xcrun -find bison) -else -BISON=bison -endif - -# - -# XPath grammar -XPathGrammar.cpp : xml/XPathGrammar.y $(PROJECT_FILE)
[webkit-changes] [209881] trunk/Source/WebCore
Title: [209881] trunk/Source/WebCore Revision 209881 Author beid...@apple.com Date 2016-12-15 15:42:54 -0800 (Thu, 15 Dec 2016) Log Message Enhance some of the logging statements just added for IndexedDB Operation scheduling. Rubberstamped by Tim Horton. No new tests (No behavior change). * Modules/indexeddb/IDBTransaction.cpp: (WebCore::IDBTransaction::iterateCursor): (WebCore::IDBTransaction::requestGetRecord): (WebCore::IDBTransaction::requestIndexRecord): (WebCore::IDBTransaction::requestPutOrAdd): * Modules/indexeddb/shared/IDBCursorInfo.cpp: (WebCore::IDBCursorInfo::loggingString): * Modules/indexeddb/shared/IDBIterateCursorData.cpp: (WebCore::IDBIterateCursorData::loggingString): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBCursorInfo.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBIterateCursorData.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (209880 => 209881) --- trunk/Source/WebCore/ChangeLog 2016-12-15 23:42:19 UTC (rev 209880) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 23:42:54 UTC (rev 209881) @@ -1,3 +1,23 @@ +2016-12-15 Brady Eidson + +Enhance some of the logging statements just added for IndexedDB Operation scheduling. + +Rubberstamped by Tim Horton. + +No new tests (No behavior change). + +* Modules/indexeddb/IDBTransaction.cpp: +(WebCore::IDBTransaction::iterateCursor): +(WebCore::IDBTransaction::requestGetRecord): +(WebCore::IDBTransaction::requestIndexRecord): +(WebCore::IDBTransaction::requestPutOrAdd): + +* Modules/indexeddb/shared/IDBCursorInfo.cpp: +(WebCore::IDBCursorInfo::loggingString): + +* Modules/indexeddb/shared/IDBIterateCursorData.cpp: +(WebCore::IDBIterateCursorData::loggingString): + 2016-12-15 Myles C. Maxfield [Cocoa] Implement font-synthesis: small-caps Modified: trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp (209880 => 209881) --- trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2016-12-15 23:42:19 UTC (rev 209880) +++ trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2016-12-15 23:42:54 UTC (rev 209881) @@ -864,7 +864,7 @@ addRequest(*cursor.request()); -LOG(IndexedDBOperations, "IDB iterate cursor operation: %s", data.loggingString().utf8().data()); +LOG(IndexedDBOperations, "IDB iterate cursor operation: %s %s", cursor.info().loggingString().utf8().data(), data.loggingString().utf8().data()); scheduleOperation(IDBClient::createTransactionOperation(*this, *cursor.request(), &IDBTransaction::didIterateCursorOnServer, &IDBTransaction::iterateCursorOnServer, data)); } @@ -970,7 +970,7 @@ auto request = IDBRequest::createObjectStoreGet(*scriptExecutionContext(), objectStore, type, *this); addRequest(request.get()); -LOG(IndexedDBOperations, "IDB get record operation: %s", getRecordData.loggingString().utf8().data()); +LOG(IndexedDBOperations, "IDB get record operation: %s %s", objectStore.info().condensedLoggingString().utf8().data(), getRecordData.loggingString().utf8().data()); scheduleOperation(IDBClient::createTransactionOperation(*this, request.get(), &IDBTransaction::didGetRecordOnServer, &IDBTransaction::getRecordOnServer, getRecordData)); return request; @@ -1006,7 +1006,7 @@ IDBGetRecordData getRecordData = { range, IDBGetRecordDataType::KeyAndValue }; -LOG(IndexedDBOperations, "IDB get index record operation: %s", getRecordData.loggingString().utf8().data()); +LOG(IndexedDBOperations, "IDB get index record operation: %s %s", index.info().condensedLoggingString().utf8().data(), getRecordData.loggingString().utf8().data()); scheduleOperation(IDBClient::createTransactionOperation(*this, request.get(), &IDBTransaction::didGetRecordOnServer, &IDBTransaction::getRecordOnServer, getRecordData)); return request; @@ -1189,7 +1189,7 @@ auto request = IDBRequest::create(*scriptExecutionContext(), objectStore, *this); addRequest(request.get()); -LOG(IndexedDBOperations, "IDB putOrAdd operation: %s", key ? key->loggingString().utf8().data() : ""); +LOG(IndexedDBOperations, "IDB putOrAdd operation: %s key: %s", objectStore.info().condensedLoggingString().utf8().data(), key ? key->loggingString().utf8().data() : ""); scheduleOperation(IDBClient::createTransactionOperation(*this, request.get(), &IDBTransaction::didPutOrAddOnServer, &IDBTransaction::putOrAddOnServer, key, &value, overwriteMode)); return request; Modified: trunk/Source/WebCore/Modules/indexeddb/shared/IDBCursorInfo.cpp (209880 => 209881) --- trunk/Source/WebCore/Modules/indexeddb/shared/IDBCursorInfo.cpp 2016-12-15 23:42:19 UTC (rev 209880) +++ trunk/Source/WebCore/Modules/indexeddb/shared/IDBCursorInfo.cpp 2016-12-15 23:42:54 UTC (rev 209881) @@ -103,9 +103,9 @@ String IDBCursorInfo::loggin
[webkit-changes] [209879] branches/safari-602-branch
Title: [209879] branches/safari-602-branch Revision 209879 Author bshaf...@apple.com Date 2016-12-15 15:12:31 -0800 (Thu, 15 Dec 2016) Log Message Merged r204664. rdar://problem/29690089 Modified Paths branches/safari-602-branch/ChangeLog branches/safari-602-branch/LayoutTests/ChangeLog branches/safari-602-branch/Source/WebCore/ChangeLog branches/safari-602-branch/Source/WebCore/bindings/js/JSHTMLCanvasElementCustom.cpp branches/safari-602-branch/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm Added Paths branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html Diff Modified: branches/safari-602-branch/ChangeLog (209878 => 209879) --- branches/safari-602-branch/ChangeLog 2016-12-15 23:06:47 UTC (rev 209878) +++ branches/safari-602-branch/ChangeLog 2016-12-15 23:12:31 UTC (rev 209879) @@ -1,3 +1,22 @@ +2016-12-15 Babak Shafiei + +Merge r204664. + +2016-08-19 Dean Jackson + +Implement preferLowPowerToHighPerformance for WebGL +https://bugs.webkit.org/show_bug.cgi?id=161017 + + +Reviewed by Myles Maxfield. + +A manual test that creates contexts with and without preferLowPowerToHighPerformance +to see what is used. This has to be manual because it depends on the hardware +configuration, and we don't have a way to detect it up-front. Also, if the +code was failing, it would be the same result as on a single GPU system. + +* ManualTests/webgl-preferLowPowerToHighPerformance.html: Added. + 2016-10-27 Matthew Hanson Merge r206119. rdar://problem/28964589 Modified: branches/safari-602-branch/LayoutTests/ChangeLog (209878 => 209879) --- branches/safari-602-branch/LayoutTests/ChangeLog 2016-12-15 23:06:47 UTC (rev 209878) +++ branches/safari-602-branch/LayoutTests/ChangeLog 2016-12-15 23:12:31 UTC (rev 209879) @@ -1,3 +1,20 @@ +2016-12-15 Babak Shafiei + +Merge r204664. + +2016-08-19 Dean Jackson + +Implement preferLowPowerToHighPerformance for WebGL +https://bugs.webkit.org/show_bug.cgi?id=161017 + + +Reviewed by Myles Maxfield. + +Now that we implement preferLowPowerToHighPerformance we can +retain its value in the context creation attributes object. + +* fast/canvas/webgl/context-creation-attributes-expected.txt: + 2016-12-01 Matthew Hanson Merge r209149. rdar://problem/29404230 Copied: branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html (from rev 204664, trunk/ManualTests/webgl-preferLowPowerToHighPerformance.html) (0 => 209879) --- branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html (rev 0) +++ branches/safari-602-branch/ManualTests/webgl-preferLowPowerToHighPerformance.html 2016-12-15 23:12:31 UTC (rev 209879) @@ -0,0 +1,38 @@ + +function createAndDescribeContext(msg, parameters) +{ +var canvas = document.createElement("canvas"); +var gl = canvas.getContext("webgl", parameters); +var ext = gl.getExtension("WEBGL_debug_renderer_info"); + +var header = document.createElement("p"); +header.textContent = msg; +document.body.appendChild(header); + +var result = document.createElement("pre"); +result.textContent = "UNMASKED_VENDOR_WEBGL is " + gl.getParameter(ext.UNMASKED_VENDOR_WEBGL) + "\n"; +result.textContent += "UNMASKED_RENDERER_WEBGL is " + gl.getParameter(ext.UNMASKED_RENDERER_WEBGL); +document.body.appendChild(result); +} + +function run() +{ +createAndDescribeContext("With preferLowPowerToHighPerformance", {preferLowPowerToHighPerformance: true}); +createAndDescribeContext("Without preferLowPowerToHighPerformance", {}); +} + +window.addEventListener("load", run, false); + + +This is a manual test, since it relies on hardware configurations. It creates two +WebGL contexts. It first asks for a context with preferLowPowerToHighPerformance +set to true, and then for a context with the default value (false). + + +Unfortunately there isn't a completely reliable way to know if this test passed. +On a system with both an integrated and discrete GPU, assuming that the system +is configured to prefer the integrated GPU, and no other apps are running +that might cause the discrete GPU to be active, the two renderers should be different. +Also, if they are different, then the first one should be the lower power model +(i.e. the integrated card). + \ No newline at end of file Modified: branches/safari-602-branch/Source/WebCore/ChangeLog (209878 => 209879) --- branches/safari-602-branch/Source/WebCore/ChangeLog 2016-12-15 23:06:47 UTC (rev 209878) +++ branches/safari-602-branch/Source/WebCore/ChangeLog 2016-12-15 23:12:31 UTC (rev 209879) @@ -1,5 +1,27 @@ 2016-12-15 Babak Shafiei +Merge r204664. + +2016-08-19 Dean Ja
[webkit-changes] [209878] branches/safari-602-branch/Source/WebCore
Title: [209878] branches/safari-602-branch/Source/WebCore Revision 209878 Author bshaf...@apple.com Date 2016-12-15 15:06:47 -0800 (Thu, 15 Dec 2016) Log Message Merged r209819. rdar://problem/29686479 Modified Paths branches/safari-602-branch/Source/WebCore/ChangeLog branches/safari-602-branch/Source/WebCore/loader/CrossOriginAccessControl.cpp Diff Modified: branches/safari-602-branch/Source/WebCore/ChangeLog (209877 => 209878) --- branches/safari-602-branch/Source/WebCore/ChangeLog 2016-12-15 23:05:35 UTC (rev 209877) +++ branches/safari-602-branch/Source/WebCore/ChangeLog 2016-12-15 23:06:47 UTC (rev 209878) @@ -1,5 +1,20 @@ 2016-12-15 Babak Shafiei +Merge r209819. + +2016-12-14 Alex Christensen + +REGRESSION (r209776): [ios-simulator] LayoutTest http/tests/xmlhttprequest/on-network-timeout-error-during-preflight.html is timing out +https://bugs.webkit.org/show_bug.cgi?id=165836 + +Reviewed by Brady Eidson. + +* loader/CrossOriginAccessControl.cpp: +(WebCore::createAccessControlPreflightRequest): +Use the platform default timeout for CORS preflight requests. + +2016-12-15 Babak Shafiei + Merge r209776. 2016-12-13 Alex Christensen Modified: branches/safari-602-branch/Source/WebCore/loader/CrossOriginAccessControl.cpp (209877 => 209878) --- branches/safari-602-branch/Source/WebCore/loader/CrossOriginAccessControl.cpp 2016-12-15 23:05:35 UTC (rev 209877) +++ branches/safari-602-branch/Source/WebCore/loader/CrossOriginAccessControl.cpp 2016-12-15 23:06:47 UTC (rev 209878) @@ -108,6 +108,8 @@ ResourceRequest createAccessControlPreflightRequest(const ResourceRequest& request, SecurityOrigin& securityOrigin) { ResourceRequest preflightRequest(request.url()); +static const double platformDefaultTimeout = 0; +preflightRequest.setTimeoutInterval(platformDefaultTimeout); updateRequestForAccessControl(preflightRequest, securityOrigin, DoNotAllowStoredCredentials); preflightRequest.setHTTPMethod("OPTIONS"); preflightRequest.setHTTPHeaderField(HTTPHeaderName::AccessControlRequestMethod, request.httpMethod()); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209877] branches/safari-602-branch/Source/WebCore
Title: [209877] branches/safari-602-branch/Source/WebCore Revision 209877 Author bshaf...@apple.com Date 2016-12-15 15:05:35 -0800 (Thu, 15 Dec 2016) Log Message Merged r209776. rdar://problem/29686479 Modified Paths branches/safari-602-branch/Source/WebCore/ChangeLog branches/safari-602-branch/Source/WebCore/platform/network/ResourceRequestBase.cpp Diff Modified: branches/safari-602-branch/Source/WebCore/ChangeLog (209876 => 209877) --- branches/safari-602-branch/Source/WebCore/ChangeLog 2016-12-15 22:48:10 UTC (rev 209876) +++ branches/safari-602-branch/Source/WebCore/ChangeLog 2016-12-15 23:05:35 UTC (rev 209877) @@ -1,3 +1,23 @@ +2016-12-15 Babak Shafiei + +Merge r209776. + +2016-12-13 Alex Christensen + +Restore NSURLRequest's default time interval to match behavior before NSURLSession adoption +https://bugs.webkit.org/show_bug.cgi?id=165821 + + +Reviewed by Brady Eidson. + +Before adopting NSURLSession, iOS used CFURLConnection, not NSURLConnection. +iOS used to have a default timeout of INT_MAX and it now has a default timeout of 0, which means use the +default NSURLRequest timeout, which is 60 seconds. This is not enough for some slow mobile networks, +so we want to match behavior of our CFURLConnection code here. + +* platform/network/ResourceRequestBase.cpp: +Use INT_MAX as the default timeout of requests on iOS. + 2016-12-07 Matthew Hanson Merge r209462. rdar://problem/29556990 Modified: branches/safari-602-branch/Source/WebCore/platform/network/ResourceRequestBase.cpp (209876 => 209877) --- branches/safari-602-branch/Source/WebCore/platform/network/ResourceRequestBase.cpp 2016-12-15 22:48:10 UTC (rev 209876) +++ branches/safari-602-branch/Source/WebCore/platform/network/ResourceRequestBase.cpp 2016-12-15 23:05:35 UTC (rev 209877) @@ -32,7 +32,7 @@ namespace WebCore { -#if !USE(SOUP) && (!PLATFORM(COCOA) || USE(CFNETWORK)) +#if !USE(SOUP) && (!PLATFORM(MAC) || USE(CFNETWORK)) double ResourceRequestBase::s_defaultTimeoutInterval = INT_MAX; #else // Will use NSURLRequest default timeout unless set to a non-zero value with setDefaultTimeoutInterval(). ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209876] trunk/Source/WebKit2
Title: [209876] trunk/Source/WebKit2 Revision 209876 Author ander...@apple.com Date 2016-12-15 14:48:10 -0800 (Thu, 15 Dec 2016) Log Message Add more mach_msg logging instrumentation https://bugs.webkit.org/show_bug.cgi?id=165914 Reviewed by Darin Adler. * Platform/IPC/mac/ConnectionMac.mm: (IPC::Connection::sendMessage): (IPC::Connection::sendOutgoingMessage): * Platform/IPC/mac/MachMessage.h: (IPC::MachMessage::messageName): (IPC::MachMessage::setMessageName): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm trunk/Source/WebKit2/Platform/IPC/mac/MachMessage.h Diff Modified: trunk/Source/WebKit2/ChangeLog (209875 => 209876) --- trunk/Source/WebKit2/ChangeLog 2016-12-15 22:12:21 UTC (rev 209875) +++ trunk/Source/WebKit2/ChangeLog 2016-12-15 22:48:10 UTC (rev 209876) @@ -1,3 +1,17 @@ +2016-12-15 Anders Carlsson + +Add more mach_msg logging instrumentation +https://bugs.webkit.org/show_bug.cgi?id=165914 + +Reviewed by Darin Adler. + +* Platform/IPC/mac/ConnectionMac.mm: +(IPC::Connection::sendMessage): +(IPC::Connection::sendOutgoingMessage): +* Platform/IPC/mac/MachMessage.h: +(IPC::MachMessage::messageName): +(IPC::MachMessage::setMessageName): + 2016-12-15 Konstantin Tokarev Added missing override and final specifiers Modified: trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm (209875 => 209876) --- trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm 2016-12-15 22:12:21 UTC (rev 209875) +++ trunk/Source/WebKit2/Platform/IPC/mac/ConnectionMac.mm 2016-12-15 22:48:10 UTC (rev 209876) @@ -283,7 +283,7 @@ return false; default: -WKSetCrashReportApplicationSpecificInformation((CFStringRef)[NSString stringWithFormat:@"Unhandled error code %x", kr]); +WKSetCrashReportApplicationSpecificInformation((CFStringRef)[NSString stringWithFormat:@"Unhandled error code %x, message '%@'", kr, message->messageName()]); CRASH(); } } @@ -318,6 +318,7 @@ } auto message = MachMessage::create(messageSize); +message->setMessageName((__bridge CFStringRef)[NSString stringWithFormat:@"%s:%s:", encoder->messageReceiverName().toString().data(), encoder->messageName().toString().data()]); bool isComplex = (numberOfPortDescriptors + numberOfOOLMemoryDescriptors) > 0; Modified: trunk/Source/WebKit2/Platform/IPC/mac/MachMessage.h (209875 => 209876) --- trunk/Source/WebKit2/Platform/IPC/mac/MachMessage.h 2016-12-15 22:12:21 UTC (rev 209875) +++ trunk/Source/WebKit2/Platform/IPC/mac/MachMessage.h 2016-12-15 22:48:10 UTC (rev 209876) @@ -26,6 +26,7 @@ #pragma once #include +#include namespace IPC { @@ -42,9 +43,13 @@ void leakDescriptors(); +CFStringRef messageName() const { return m_messageName.get(); } +void setMessageName(CFStringRef messageName) { m_messageName = messageName; } + private: explicit MachMessage(size_t); +RetainPtr m_messageName; size_t m_size; bool m_shouldFreeDescriptors; uint8_t m_buffer[0]; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209875] trunk
Title: [209875] trunk Revision 209875 Author mmaxfi...@apple.com Date 2016-12-15 14:12:21 -0800 (Thu, 15 Dec 2016) Log Message [Cocoa] Implement font-synthesis: small-caps https://bugs.webkit.org/show_bug.cgi?id=165892 Reviewed by David Hyatt. Source/WebCore: The CSS Fonts level 4 spec adds a new value to the "font-synthesis" property which controls whether or not small-caps is allowed to be synthesized. Luckily, we already have an implementation of this straightforward, so the implementation is quite simple. Tests: css3/font-synthesis-small-caps.html fast/text/font-synthesis-parsing.html * css/CSSComputedStyleDeclaration.cpp: (WebCore::fontSynthesisFromStyle): * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::convertFontSynthesis): * css/parser/CSSPropertyParser.cpp: (WebCore::consumeFontSynthesis): * platform/graphics/FontCache.h: (WebCore::FontDescriptionKey::makeFlagsKey): * platform/graphics/FontDescription.cpp: (WebCore::FontDescription::FontDescription): * platform/graphics/FontDescription.h: (WebCore::FontCascadeDescription::initialFontSynthesis): * platform/graphics/mac/ComplexTextController.cpp: (WebCore::shouldSynthesize): (WebCore::ComplexTextController::collectComplexTextRuns): LayoutTests: * fast/text/font-synthesis-parsing-expected.txt: Added. * fast/text/font-synthesis-parsing.html: Added. * css3/font-synthesis-small-caps-expected.html: Added. * css3/font-synthesis-small-caps.html: Added. * fast/css/getComputedStyle/computed-style-expected.txt: * fast/css/getComputedStyle/computed-style-font-family-expected.txt: * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: * fast/css3-text/font-synthesis-parse-expected.txt: * fast/css3-text/font-synthesis-parse.html: * svg/css/getComputedStyle-basic-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt trunk/LayoutTests/fast/css/getComputedStyle/computed-style-font-family-expected.txt trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt trunk/LayoutTests/fast/css3-text/font-synthesis-parse-expected.txt trunk/LayoutTests/fast/css3-text/font-synthesis-parse.html trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp trunk/Source/WebCore/css/StyleBuilderConverter.h trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp trunk/Source/WebCore/platform/graphics/FontCache.h trunk/Source/WebCore/platform/graphics/FontDescription.cpp trunk/Source/WebCore/platform/graphics/FontDescription.h trunk/Source/WebCore/platform/graphics/mac/ComplexTextController.cpp trunk/Source/WebCore/platform/text/TextFlags.h Added Paths trunk/LayoutTests/css3/font-synthesis-small-caps-expected.html trunk/LayoutTests/css3/font-synthesis-small-caps.html trunk/LayoutTests/fast/text/font-synthesis-parsing-expected.txt trunk/LayoutTests/fast/text/font-synthesis-parsing.html Diff Modified: trunk/LayoutTests/ChangeLog (209874 => 209875) --- trunk/LayoutTests/ChangeLog 2016-12-15 22:08:38 UTC (rev 209874) +++ trunk/LayoutTests/ChangeLog 2016-12-15 22:12:21 UTC (rev 209875) @@ -1,3 +1,21 @@ +2016-12-15 Myles C. Maxfield + +[Cocoa] Implement font-synthesis: small-caps +https://bugs.webkit.org/show_bug.cgi?id=165892 + +Reviewed by David Hyatt. + +* fast/text/font-synthesis-parsing-expected.txt: Added. +* fast/text/font-synthesis-parsing.html: Added. +* css3/font-synthesis-small-caps-expected.html: Added. +* css3/font-synthesis-small-caps.html: Added. +* fast/css/getComputedStyle/computed-style-expected.txt: +* fast/css/getComputedStyle/computed-style-font-family-expected.txt: +* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: +* fast/css3-text/font-synthesis-parse-expected.txt: +* fast/css3-text/font-synthesis-parse.html: +* svg/css/getComputedStyle-basic-expected.txt: + 2016-12-15 Simon Fraser [iOS WK2] Don't disable position:fixed when a form element has focus Added: trunk/LayoutTests/css3/font-synthesis-small-caps-expected.html (0 => 209875) --- trunk/LayoutTests/css3/font-synthesis-small-caps-expected.html (rev 0) +++ trunk/LayoutTests/css3/font-synthesis-small-caps-expected.html 2016-12-15 22:12:21 UTC (rev 209875) @@ -0,0 +1,107 @@ + + + + +/* Only test OpenType fonts for now, because our TrueType font is busted when disabling features. */ +@font-face { +/* Opentype. "J" responds to smcp; "K" responds to c2sc */ +font-family: "testfontotf"; +src: url("resources/FontWithFeatures.otf") format("opentype"); +} +@font-face { +/* Truetype. "S" responds to smcp; "V" responds to c2sc */ +font-family: "testfontttf"; +src: url("resources/FontWithFeatures.ttf") format("truetype"); +} +@font-face { +/* Opentype. "f" responds to sm
[webkit-changes] [209873] trunk/Source/WebCore
Title: [209873] trunk/Source/WebCore Revision 209873 Author beid...@apple.com Date 2016-12-15 14:08:26 -0800 (Thu, 15 Dec 2016) Log Message Add a new Logging Channel for IndexedDB Operation scheduling. https://bugs.webkit.org/show_bug.cgi?id=165912 Reviewed by Alex Christensen. No new tests (No behavior change). * Modules/indexeddb/IDBDatabase.cpp: (WebCore::IDBDatabase::transaction): * Modules/indexeddb/IDBFactory.cpp: (WebCore::IDBFactory::openInternal): (WebCore::IDBFactory::deleteDatabase): * Modules/indexeddb/IDBTransaction.cpp: (WebCore::IDBTransaction::internalAbort): (WebCore::IDBTransaction::commit): (WebCore::IDBTransaction::createObjectStore): (WebCore::IDBTransaction::renameObjectStore): (WebCore::IDBTransaction::createIndex): (WebCore::IDBTransaction::renameIndex): (WebCore::IDBTransaction::doRequestOpenCursor): (WebCore::IDBTransaction::iterateCursor): (WebCore::IDBTransaction::requestGetAllObjectStoreRecords): (WebCore::IDBTransaction::requestGetAllIndexRecords): (WebCore::IDBTransaction::requestGetRecord): (WebCore::IDBTransaction::requestIndexRecord): (WebCore::IDBTransaction::requestCount): (WebCore::IDBTransaction::requestDeleteRecord): (WebCore::IDBTransaction::requestClearObjectStore): (WebCore::IDBTransaction::requestPutOrAdd): (WebCore::IDBTransaction::deleteObjectStore): (WebCore::IDBTransaction::deleteIndex): * Modules/indexeddb/shared/IDBCursorInfo.cpp: (WebCore::IDBCursorInfo::loggingString): * Modules/indexeddb/shared/IDBCursorInfo.h: * Modules/indexeddb/shared/IDBGetAllRecordsData.cpp: (WebCore::IDBGetAllRecordsData::loggingString): * Modules/indexeddb/shared/IDBGetAllRecordsData.h: * Modules/indexeddb/shared/IDBGetRecordData.cpp: (WebCore::IDBGetRecordData::loggingString): * Modules/indexeddb/shared/IDBGetRecordData.h: * Modules/indexeddb/shared/IDBIndexInfo.cpp: (WebCore::IDBIndexInfo::condensedLoggingString): * Modules/indexeddb/shared/IDBIndexInfo.h: * Modules/indexeddb/shared/IDBIterateCursorData.cpp: (WebCore::IDBIterateCursorData::loggingString): * Modules/indexeddb/shared/IDBIterateCursorData.h: * Modules/indexeddb/shared/IDBObjectStoreInfo.cpp: (WebCore::IDBObjectStoreInfo::condensedLoggingString): * Modules/indexeddb/shared/IDBObjectStoreInfo.h: * platform/Logging.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBFactory.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBCursorInfo.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBCursorInfo.h trunk/Source/WebCore/Modules/indexeddb/shared/IDBGetAllRecordsData.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBGetAllRecordsData.h trunk/Source/WebCore/Modules/indexeddb/shared/IDBGetRecordData.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBGetRecordData.h trunk/Source/WebCore/Modules/indexeddb/shared/IDBIndexInfo.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBIndexInfo.h trunk/Source/WebCore/Modules/indexeddb/shared/IDBIterateCursorData.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBIterateCursorData.h trunk/Source/WebCore/Modules/indexeddb/shared/IDBObjectStoreInfo.cpp trunk/Source/WebCore/Modules/indexeddb/shared/IDBObjectStoreInfo.h trunk/Source/WebCore/platform/Logging.h Diff Modified: trunk/Source/WebCore/ChangeLog (209872 => 209873) --- trunk/Source/WebCore/ChangeLog 2016-12-15 22:07:10 UTC (rev 209872) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 22:08:26 UTC (rev 209873) @@ -1,3 +1,65 @@ +2016-12-15 Brady Eidson + +Add a new Logging Channel for IndexedDB Operation scheduling. +https://bugs.webkit.org/show_bug.cgi?id=165912 + +Reviewed by Alex Christensen. + +No new tests (No behavior change). + +* Modules/indexeddb/IDBDatabase.cpp: +(WebCore::IDBDatabase::transaction): + +* Modules/indexeddb/IDBFactory.cpp: +(WebCore::IDBFactory::openInternal): +(WebCore::IDBFactory::deleteDatabase): + +* Modules/indexeddb/IDBTransaction.cpp: +(WebCore::IDBTransaction::internalAbort): +(WebCore::IDBTransaction::commit): +(WebCore::IDBTransaction::createObjectStore): +(WebCore::IDBTransaction::renameObjectStore): +(WebCore::IDBTransaction::createIndex): +(WebCore::IDBTransaction::renameIndex): +(WebCore::IDBTransaction::doRequestOpenCursor): +(WebCore::IDBTransaction::iterateCursor): +(WebCore::IDBTransaction::requestGetAllObjectStoreRecords): +(WebCore::IDBTransaction::requestGetAllIndexRecords): +(WebCore::IDBTransaction::requestGetRecord): +(WebCore::IDBTransaction::requestIndexRecord): +(WebCore::IDBTransaction::requestCount): +(WebCore::IDBTransaction::requestDeleteRecord): +(WebCore::IDBTransaction::requestClearObjectStore): +(WebCore::IDBTransaction::requestPutOrAdd): +(WebCore::IDBTrans
[webkit-changes] [209874] trunk
Title: [209874] trunk Revision 209874 Author jfbast...@apple.com Date 2016-12-15 14:08:38 -0800 (Thu, 15 Dec 2016) Log Message JSTests: WebAssembly API: improve data section errors https://bugs.webkit.org/show_bug.cgi?id=165733 Reviewed by Keith Miller. * wasm/js-api/element-data.js: Added. (ElementBeforeData.set const): (ElementBeforeData): check the order of initialization, which is observable on failure * wasm/js-api/test_Data.js: (DataSectionWithoutMemory): (DataSectionOffTheEnd): Deleted. (DataSectionPartlyOffTheEnd): Deleted. (DataSectionEmptyOffTheEnd): Deleted. (DataSectionSeenByStart): Deleted. Source/_javascript_Core: WebAssembly API: improve data section errors, initialize after Element https://bugs.webkit.org/show_bug.cgi?id=165733 Reviewed by Keith Miller. * wasm/WasmModuleParser.cpp: (JSC::Wasm::ModuleParser::parseData): Data section without Memory section or import is a validation error * wasm/js/WebAssemblyModuleRecord.cpp: (JSC::dataSegmentFail): (JSC::WebAssemblyModuleRecord::evaluate): tighten checks (though the spec isn't fully baked), and move after Element initialization Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/wasm/js-api/test_Data.js trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/wasm/WasmModuleParser.cpp trunk/Source/_javascript_Core/wasm/js/WebAssemblyModuleRecord.cpp Added Paths trunk/JSTests/wasm/js-api/element-data.js Diff Modified: trunk/JSTests/ChangeLog (209873 => 209874) --- trunk/JSTests/ChangeLog 2016-12-15 22:08:26 UTC (rev 209873) +++ trunk/JSTests/ChangeLog 2016-12-15 22:08:38 UTC (rev 209874) @@ -1,3 +1,20 @@ +2016-12-15 JF Bastien + +WebAssembly API: improve data section errors +https://bugs.webkit.org/show_bug.cgi?id=165733 + +Reviewed by Keith Miller. + +* wasm/js-api/element-data.js: Added. +(ElementBeforeData.set const): +(ElementBeforeData): check the order of initialization, which is observable on failure +* wasm/js-api/test_Data.js: +(DataSectionWithoutMemory): +(DataSectionOffTheEnd): Deleted. +(DataSectionPartlyOffTheEnd): Deleted. +(DataSectionEmptyOffTheEnd): Deleted. +(DataSectionSeenByStart): Deleted. + 2016-12-15 Keith Miller Fix 64-bit shift family Wasm opcodes Added: trunk/JSTests/wasm/js-api/element-data.js (0 => 209874) --- trunk/JSTests/wasm/js-api/element-data.js (rev 0) +++ trunk/JSTests/wasm/js-api/element-data.js 2016-12-15 22:08:38 UTC (rev 209874) @@ -0,0 +1,47 @@ +import Builder from '../Builder.js'; +import * as assert from '../assert.js'; + +const memSizeInPages = 1; +const pageSizeInBytes = 64 * 1024; +const memoryDescription = { initial: memSizeInPages, maximum: memSizeInPages }; + +(function ElementBeforeData() { +const builder = (new Builder()) +.Type().End() +.Import() +.Memory("imp", "memory", memoryDescription) +.Table("imp", "table", {element: "anyfunc", initial: 19}) // unspecified maximum. +.End() +.Function().End() +.Element() +.Element({offset: 19, functionIndices: [0, 0, 0, 0, 0]}) +.End() +.Code() +.Function("foo", {params: ["i32"], ret: "i32"}) +.GetLocal(0) +.I32Const(42) +.I32Add() +.Return() +.End() +.End() +.Data() + .Segment([0xde, 0xad, 0xbe, 0xef]).Offset(0).End() +.End(); +const bin = builder.WebAssembly().get(); +const module = new WebAssembly.Module(bin); +const memory = new WebAssembly.Memory(memoryDescription); +const table = new WebAssembly.Table({element: "anyfunc", initial: 19}); +const imports = { +imp: { +memory: memory, +table: table, +} +}; +assert.throws(() => new WebAssembly.Instance(module, imports), RangeError, `Element is trying to set an out of bounds table index`); +// On Element failure, the Data section shouldn't have executed. +const buffer = new Uint8Array(memory.buffer); +for (let idx = 0; idx < memSizeInPages * pageSizeInBytes; ++idx) { +const value = buffer[idx]; +assert.eq(value, 0x00); +} +})(); Modified: trunk/JSTests/wasm/js-api/test_Data.js (209873 => 209874) --- trunk/JSTests/wasm/js-api/test_Data.js 2016-12-15 22:08:26 UTC (rev 209873) +++ trunk/JSTests/wasm/js-api/test_Data.js 2016-12-15 22:08:38 UTC (rev 209874) @@ -4,9 +4,18 @@ const memSizeInPages = 1; const pageSizeInBytes = 64 * 1024; const memoryDescription = { initial: memSizeInPages, maximum: memSizeInPages }; +const emptyMemory = { initial: 0, maximum: 2 }; // FIXME Some corner cases are ill-specified: https://github.com/WebAssembly/design/issues/897 +const assertMemoryAllZero = memory => { +const buffer = new Uint8Array(memory.buffer); +for (let idx = 0; idx < buffer.length; ++idx) { +cons
[webkit-changes] [209872] trunk/Source/JavaScriptCore
Title: [209872] trunk/Source/_javascript_Core Revision 209872 Author keith_mil...@apple.com Date 2016-12-15 14:07:10 -0800 (Thu, 15 Dec 2016) Log Message Turn on WebAssembly by default https://bugs.webkit.org/show_bug.cgi?id=165918 Reviewed by Saam Barati. * runtime/Options.h: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/Options.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (209871 => 209872) --- trunk/Source/_javascript_Core/ChangeLog 2016-12-15 21:26:08 UTC (rev 209871) +++ trunk/Source/_javascript_Core/ChangeLog 2016-12-15 22:07:10 UTC (rev 209872) @@ -1,3 +1,12 @@ +2016-12-15 Keith Miller + +Turn on WebAssembly by default +https://bugs.webkit.org/show_bug.cgi?id=165918 + +Reviewed by Saam Barati. + +* runtime/Options.h: + 2016-12-15 Konstantin Tokarev Added missing override and final specifiers Modified: trunk/Source/_javascript_Core/runtime/Options.h (209871 => 209872) --- trunk/Source/_javascript_Core/runtime/Options.h 2016-12-15 21:26:08 UTC (rev 209871) +++ trunk/Source/_javascript_Core/runtime/Options.h 2016-12-15 22:07:10 UTC (rev 209872) @@ -416,7 +416,7 @@ v(bool, useSourceProviderCache, true, Normal, "If false, the parser will not use the source provider cache. It's good to verify everything works when this is false. Because the cache is so successful, it can mask bugs.") \ v(bool, useCodeCache, true, Normal, "If false, the unlinked byte code cache will not be used.") \ \ -v(bool, useWebAssembly, false, Normal, "Expose the WebAssembly global object.") \ +v(bool, useWebAssembly, true, Normal, "Expose the WebAssembly global object.") \ enum OptionEquivalence { SameOption, ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209871] trunk/Source
Title: [209871] trunk/Source Revision 209871 Author annu...@yandex.ru Date 2016-12-15 13:26:08 -0800 (Thu, 15 Dec 2016) Log Message Added missing override and final specifiers https://bugs.webkit.org/show_bug.cgi?id=165903 Reviewed by Darin Adler. Source/_javascript_Core: * bytecompiler/BytecodeGenerator.h: * jsc.cpp: * parser/Nodes.h: Source/WebCore: No new tests needed. * Modules/mediastream/OverconstrainedErrorEvent.h: * bindings/js/JSCallbackData.h: * bindings/js/JSCustomXPathNSResolver.h: * bindings/js/JSErrorHandler.h: * css/StyleRuleImport.h: * dom/SecurityPolicyViolationEvent.h: * editing/CreateLinkCommand.h: * editing/DeleteSelectionCommand.h: * editing/DictationCommand.h: * editing/Editor.cpp: * editing/FormatBlockCommand.h: * editing/IndentOutdentCommand.h: * editing/InsertLineBreakCommand.h: * editing/InsertParagraphSeparatorCommand.h: * editing/ModifySelectionListLevel.h: * editing/MoveSelectionCommand.h: * editing/RemoveFormatCommand.h: * editing/RemoveNodePreservingChildrenCommand.h: * editing/ReplaceSelectionCommand.h: * editing/SimplifyMarkupCommand.h: * editing/SplitTextNodeContainingElementCommand.h: * editing/UnlinkCommand.h: * fileapi/FileReaderLoader.h: * html/canvas/ANGLEInstancedArrays.h: * html/canvas/WebGLVertexArrayObjectBase.h: * loader/SinkDocument.h: * loader/archive/mhtml/MHTMLArchive.h: * page/animation/CSSPropertyAnimation.cpp: * platform/audio/MultiChannelResampler.cpp: * platform/audio/SincResampler.cpp: * platform/audio/gstreamer/AudioDestinationGStreamer.h: * platform/audio/gstreamer/AudioSourceProviderGStreamer.h: * platform/graphics/TextTrackRepresentation.cpp: * platform/graphics/displaylists/DisplayListItems.h: * platform/graphics/filters/FEBlend.h: * platform/graphics/filters/FEColorMatrix.h: * platform/graphics/filters/FEComponentTransfer.h: * platform/graphics/filters/FEConvolveMatrix.h: * platform/graphics/filters/FEDiffuseLighting.h: * platform/graphics/filters/FEDropShadow.h: * platform/graphics/filters/FEGaussianBlur.h: * platform/graphics/filters/FELighting.h: * platform/graphics/filters/FEMerge.h: * platform/graphics/filters/FEMorphology.h: * platform/graphics/filters/FEOffset.h: * platform/graphics/filters/FESpecularLighting.h: * platform/graphics/filters/FETile.h: * platform/graphics/filters/FETurbulence.h: * platform/graphics/filters/SourceAlpha.h: * platform/graphics/filters/SourceGraphic.h: * platform/graphics/opengl/Extensions3DOpenGL.h: * platform/graphics/opengl/Extensions3DOpenGLCommon.h: * platform/graphics/texmap/TextureMapperBackingStore.h: * platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.h: * platform/mock/GeolocationClientMock.h: * platform/text/TextCodecICU.h: * platform/text/TextCodecLatin1.h: * platform/text/TextCodecUTF16.h: * platform/text/TextCodecUTF8.h: * platform/text/TextCodecUserDefined.h: * rendering/RenderFullScreen.cpp: * storage/StorageEvent.h: * svg/properties/SVGListProperty.h: * svg/properties/SVGStaticListPropertyTearOff.h: * svg/properties/SVGStaticPropertyTearOff.h: * xml/NativeXPathNSResolver.h: * xml/XMLHttpRequestProgressEvent.h: * xml/XMLHttpRequestProgressEventThrottle.h: * xml/XPathVariableReference.h: * xml/XSLImportRule.h: Source/WebKit2: * UIProcess/API/gtk/WebKitGeolocationProvider.h: * UIProcess/WebFormSubmissionListenerProxy.h: * UIProcess/WebFramePolicyListenerProxy.h: * WebProcess/Automation/WebAutomationSessionProxy.h: * WebProcess/InjectedBundle/API/gtk/DOM/GObjectXPathNSResolver.h: * WebProcess/MediaCache/WebMediaKeyStorageManager.h: * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h: * WebProcess/WebCoreSupport/WebPlugInClient.h: * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h: * WebProcess/WebPage/FindController.h: Source/WTF: * wtf/RunLoop.h: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h trunk/Source/_javascript_Core/jsc.cpp trunk/Source/_javascript_Core/parser/Nodes.h trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/RunLoop.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/mediastream/OverconstrainedErrorEvent.h trunk/Source/WebCore/bindings/js/JSCallbackData.h trunk/Source/WebCore/bindings/js/JSCustomXPathNSResolver.h trunk/Source/WebCore/bindings/js/JSErrorHandler.h trunk/Source/WebCore/css/StyleRuleImport.h trunk/Source/WebCore/dom/SecurityPolicyViolationEvent.h trunk/Source/WebCore/editing/CreateLinkCommand.h trunk/Source/WebCore/editing/DeleteSelectionCommand.h trunk/Source/WebCore/editing/DictationCommand.h trunk/Source/WebCore/editing/Editor.cpp trunk/Source/WebCore/editing/FormatBlockCommand.h trunk/Source/WebCore/editing/IndentOutdentCommand.h trunk/Source/WebCore/editing/InsertLineBreakCommand.h trunk/Source/WebCore/editing/InsertParagraphSeparatorCommand.h trunk/Source/WebCore/editing/ModifySelectionListLevel.h trunk/Source/WebCore/editing/MoveSelectionCommand.h trunk/Source/WebCore/editing/RemoveFormatCommand.h trunk/Source/WebCore/editing/RemoveNodePreservingChildre
[webkit-changes] [209870] trunk/Source/WebCore
Title: [209870] trunk/Source/WebCore Revision 209870 Author cdu...@apple.com Date 2016-12-15 13:08:40 -0800 (Thu, 15 Dec 2016) Log Message Inline Document::existingAXObjectCache() https://bugs.webkit.org/show_bug.cgi?id=165906 Reviewed by Darin Adler. Inline Document::existingAXObjectCache() to avoid paying function call cost in the common case where AX is disabled. * dom/Document.cpp: (WebCore::Document::existingAXObjectCacheSlow): (WebCore::Document::existingAXObjectCache): Deleted. * dom/Document.h: (WebCore::Document::existingAXObjectCache): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h Diff Modified: trunk/Source/WebCore/ChangeLog (209869 => 209870) --- trunk/Source/WebCore/ChangeLog 2016-12-15 20:55:18 UTC (rev 209869) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 21:08:40 UTC (rev 209870) @@ -1,3 +1,19 @@ +2016-12-15 Chris Dumez + +Inline Document::existingAXObjectCache() +https://bugs.webkit.org/show_bug.cgi?id=165906 + +Reviewed by Darin Adler. + +Inline Document::existingAXObjectCache() to avoid paying function call +cost in the common case where AX is disabled. + +* dom/Document.cpp: +(WebCore::Document::existingAXObjectCacheSlow): +(WebCore::Document::existingAXObjectCache): Deleted. +* dom/Document.h: +(WebCore::Document::existingAXObjectCache): + 2016-12-15 Ryan Haddad Rebaseline bindings tests after r209864. Modified: trunk/Source/WebCore/dom/Document.cpp (209869 => 209870) --- trunk/Source/WebCore/dom/Document.cpp 2016-12-15 20:55:18 UTC (rev 209869) +++ trunk/Source/WebCore/dom/Document.cpp 2016-12-15 21:08:40 UTC (rev 209870) @@ -275,6 +275,7 @@ using namespace HTMLNames; static const unsigned cMaxWriteRecursionDepth = 21; +bool Document::hasEverCreatedAnAXObjectCache = false; // DOM Level 2 says (letters added): // @@ -2416,13 +2417,9 @@ m_axObjectCache = nullptr; } -static bool hasEverCreatedAnAXObjectCache = false; - -AXObjectCache* Document::existingAXObjectCache() const +AXObjectCache* Document::existingAXObjectCacheSlow() const { -if (!hasEverCreatedAnAXObjectCache) -return nullptr; - +ASSERT(hasEverCreatedAnAXObjectCache); Document& topDocument = this->topDocument(); if (!topDocument.hasLivingRenderTree()) return nullptr; Modified: trunk/Source/WebCore/dom/Document.h (209869 => 209870) --- trunk/Source/WebCore/dom/Document.h 2016-12-15 20:55:18 UTC (rev 209869) +++ trunk/Source/WebCore/dom/Document.h 2016-12-15 21:08:40 UTC (rev 209870) @@ -1381,6 +1381,7 @@ void wheelEventHandlersChanged(); HttpEquivPolicy httpEquivPolicy() const; +AXObjectCache* existingAXObjectCacheSlow() const; // DOM Cookies caching. const String& cachedDOMCookies() const { return m_cachedDOMCookies; } @@ -1764,6 +1765,8 @@ #if ENABLE(WEB_SOCKETS) RefPtr m_socketProvider; #endif + +static bool hasEverCreatedAnAXObjectCache; }; inline void Document::notifyRemovePendingSheetIfNeeded() @@ -1784,6 +1787,13 @@ return m_templateDocumentHost ? this : m_templateDocument.get(); } +inline AXObjectCache* Document::existingAXObjectCache() const +{ +if (!hasEverCreatedAnAXObjectCache) +return nullptr; +return existingAXObjectCacheSlow(); +} + // Put these methods here, because they require the Document definition, but we really want to inline them. inline bool Node::isDocumentNode() const ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209869] trunk/Source/JavaScriptCore
Title: [209869] trunk/Source/_javascript_Core Revision 209869 Author cdu...@apple.com Date 2016-12-15 12:55:18 -0800 (Thu, 15 Dec 2016) Log Message Harden JSObject::getOwnPropertyDescriptor() https://bugs.webkit.org/show_bug.cgi?id=165908 Reviewed by Geoffrey Garen. * runtime/JSObject.cpp: (JSC::JSObject::getOwnPropertyDescriptor): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/JSObject.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (209868 => 209869) --- trunk/Source/_javascript_Core/ChangeLog 2016-12-15 20:18:25 UTC (rev 209868) +++ trunk/Source/_javascript_Core/ChangeLog 2016-12-15 20:55:18 UTC (rev 209869) @@ -1,3 +1,13 @@ +2016-12-15 Chris Dumez + +Harden JSObject::getOwnPropertyDescriptor() +https://bugs.webkit.org/show_bug.cgi?id=165908 + +Reviewed by Geoffrey Garen. + +* runtime/JSObject.cpp: +(JSC::JSObject::getOwnPropertyDescriptor): + 2016-12-15 Keith Miller Fix 64-bit shift family Wasm opcodes Modified: trunk/Source/_javascript_Core/runtime/JSObject.cpp (209868 => 209869) --- trunk/Source/_javascript_Core/runtime/JSObject.cpp 2016-12-15 20:18:25 UTC (rev 209868) +++ trunk/Source/_javascript_Core/runtime/JSObject.cpp 2016-12-15 20:55:18 UTC (rev 209869) @@ -3217,8 +3217,12 @@ } ASSERT(maybeGetterSetter); -getterSetter = jsCast(maybeGetterSetter); +getterSetter = jsDynamicCast(maybeGetterSetter); } +ASSERT(getterSetter); +if (!getterSetter) +return false; + if (getterSetter->getter()) descriptor.setGetter(getCustomGetterSetterFunctionForGetterSetter(exec, propertyName, getterSetter, JSCustomGetterSetterFunction::Type::Getter)); if (getterSetter->setter()) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209868] trunk/Source/WebCore
Title: [209868] trunk/Source/WebCore Revision 209868 Author ryanhad...@apple.com Date 2016-12-15 12:18:25 -0800 (Thu, 15 Dec 2016) Log Message Rebaseline bindings tests after r209864. Unreviewed test gardening. * bindings/scripts/test/JS/JSTestStandaloneDictionary.cpp: (WebCore::convertDictionary): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/test/JS/JSTestStandaloneDictionary.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (209867 => 209868) --- trunk/Source/WebCore/ChangeLog 2016-12-15 19:19:51 UTC (rev 209867) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 20:18:25 UTC (rev 209868) @@ -1,3 +1,12 @@ +2016-12-15 Ryan Haddad + +Rebaseline bindings tests after r209864. + +Unreviewed test gardening. + +* bindings/scripts/test/JS/JSTestStandaloneDictionary.cpp: +(WebCore::convertDictionary): + 2016-12-15 Andreas Kling Always clear RenderLayer backing stores when going into page cache. Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestStandaloneDictionary.cpp (209867 => 209868) --- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestStandaloneDictionary.cpp 2016-12-15 19:19:51 UTC (rev 209867) +++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestStandaloneDictionary.cpp 2016-12-15 20:18:25 UTC (rev 209868) @@ -31,6 +31,39 @@ namespace WebCore { +template<> DictionaryImplName convertDictionary(ExecState& state, JSValue value) +{ +VM& vm = state.vm(); +auto throwScope = DECLARE_THROW_SCOPE(vm); +bool isNullOrUndefined = value.isUndefinedOrNull(); +auto* object = isNullOrUndefined ? nullptr : value.getObject(); +if (UNLIKELY(!isNullOrUndefined && !object)) { +throwTypeError(&state, throwScope); +return { }; +} +if (UNLIKELY(object && object->type() == RegExpObjectType)) { +throwTypeError(&state, throwScope); +return { }; +} +DictionaryImplName result; +JSValue boolMemberValue = isNullOrUndefined ? jsUndefined() : object->get(&state, Identifier::fromString(&state, "boolMember")); +if (!boolMemberValue.isUndefined()) { +result.boolMember = convert(state, boolMemberValue); +RETURN_IF_EXCEPTION(throwScope, { }); +} +JSValue enumMemberValue = isNullOrUndefined ? jsUndefined() : object->get(&state, Identifier::fromString(&state, "enumMember")); +if (!enumMemberValue.isUndefined()) { +result.enumMember = convert>(state, enumMemberValue); +RETURN_IF_EXCEPTION(throwScope, { }); +} +JSValue stringMemberValue = isNullOrUndefined ? jsUndefined() : object->get(&state, Identifier::fromString(&state, "stringMember")); +if (!stringMemberValue.isUndefined()) { +result.stringMember = convert(state, stringMemberValue); +RETURN_IF_EXCEPTION(throwScope, { }); +} +return result; +} + template<> JSString* convertEnumerationToJS(ExecState& state, TestStandaloneDictionary::EnumInStandaloneDictionaryFile enumerationValue) { static NeverDestroyed values[] = { @@ -70,39 +103,6 @@ return "\"enumValue1\", \"enumValue2\""; } -template<> DictionaryImplName convertDictionary(ExecState& state, JSValue value) -{ -VM& vm = state.vm(); -auto throwScope = DECLARE_THROW_SCOPE(vm); -bool isNullOrUndefined = value.isUndefinedOrNull(); -auto* object = isNullOrUndefined ? nullptr : value.getObject(); -if (UNLIKELY(!isNullOrUndefined && !object)) { -throwTypeError(&state, throwScope); -return { }; -} -if (UNLIKELY(object && object->type() == RegExpObjectType)) { -throwTypeError(&state, throwScope); -return { }; -} -DictionaryImplName result; -JSValue boolMemberValue = isNullOrUndefined ? jsUndefined() : object->get(&state, Identifier::fromString(&state, "boolMember")); -if (!boolMemberValue.isUndefined()) { -result.boolMember = convert(state, boolMemberValue); -RETURN_IF_EXCEPTION(throwScope, { }); -} -JSValue enumMemberValue = isNullOrUndefined ? jsUndefined() : object->get(&state, Identifier::fromString(&state, "enumMember")); -if (!enumMemberValue.isUndefined()) { -result.enumMember = convert>(state, enumMemberValue); -RETURN_IF_EXCEPTION(throwScope, { }); -} -JSValue stringMemberValue = isNullOrUndefined ? jsUndefined() : object->get(&state, Identifier::fromString(&state, "stringMember")); -if (!stringMemberValue.isUndefined()) { -result.stringMember = convert(state, stringMemberValue); -RETURN_IF_EXCEPTION(throwScope, { }); -} -return result; -} - } // namespace WebCore #endif // ENABLE(Condition1) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209867] trunk
Title: [209867] trunk Revision 209867 Author simon.fra...@apple.com Date 2016-12-15 11:19:51 -0800 (Thu, 15 Dec 2016) Log Message [iOS WK2] Don't disable position:fixed when a form element has focus https://bugs.webkit.org/show_bug.cgi?id=165891 rdar://problem/29271694 Reviewed by Wenson Hsieh. Source/WebKit2: Before visual viewports, we had to lay out position:fixed relative to the document rect (effectively disabling position:fixed) when a form element was focused, to ensure that we could scroll to inputs inside position:Fixed. When visual viewports are enabled, we can do a better job of this, and keep position:fixed active. Test: fast/visual-viewport/ios/zoomed-focus-in-fixed.html * UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _zoomToFocusRect:selectionRect:insideFixed:fontSize:minimumScale:maximumScale:allowScaling:forceScroll:]): Soon this will use insideFixed to have better scroll-into-view behavior. (-[WKWebView _zoomToFocusRect:selectionRect:fontSize:minimumScale:maximumScale:allowScaling:forceScroll:]): Deleted. * UIProcess/API/Cocoa/WKWebViewInternal.h: * UIProcess/ios/WKContentView.h: * UIProcess/ios/WKContentView.mm: (-[WKContentView _zoomToFocusRect:selectionRect:insideFixed:fontSize:minimumScale:maximumScale:allowScaling:forceScroll:]): (-[WKContentView _zoomToFocusRect:selectionRect:fontSize:minimumScale:maximumScale:allowScaling:forceScroll:]): Deleted. * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _displayFormNodeInputView]): * UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::computeCustomFixedPositionRect): Don't fall back to using the documentRect as the fixed position rect if visual viewports are enabled. * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::getAssistedNodeInformation): Don't reset the customtFixedPositionRect around computing element coordinates if visual viewports are enabled. LayoutTests: * TestExpectations: * fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt: Added. * fast/visual-viewport/ios/zoomed-focus-in-fixed.html: Added. * platform/ios-simulator-wk2/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewInternal.h trunk/Source/WebKit2/UIProcess/ios/WKContentView.h trunk/Source/WebKit2/UIProcess/ios/WKContentView.mm trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm Added Paths trunk/LayoutTests/fast/visual-viewport/ios/ trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed.html Diff Modified: trunk/LayoutTests/ChangeLog (209866 => 209867) --- trunk/LayoutTests/ChangeLog 2016-12-15 19:17:00 UTC (rev 209866) +++ trunk/LayoutTests/ChangeLog 2016-12-15 19:19:51 UTC (rev 209867) @@ -1,3 +1,16 @@ +2016-12-15 Simon Fraser + +[iOS WK2] Don't disable position:fixed when a form element has focus +https://bugs.webkit.org/show_bug.cgi?id=165891 +rdar://problem/29271694 + +Reviewed by Wenson Hsieh. + +* TestExpectations: +* fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt: Added. +* fast/visual-viewport/ios/zoomed-focus-in-fixed.html: Added. +* platform/ios-simulator-wk2/TestExpectations: + 2016-12-15 Darin Adler Remove custom binding for MediaDevices Modified: trunk/LayoutTests/TestExpectations (209866 => 209867) --- trunk/LayoutTests/TestExpectations 2016-12-15 19:17:00 UTC (rev 209866) +++ trunk/LayoutTests/TestExpectations 2016-12-15 19:19:51 UTC (rev 209867) @@ -20,6 +20,7 @@ fast/zooming/ios [ Skip ] fast/forms/ios [ Skip ] fast/viewport/ios [ Skip ] +fast/visual-viewport/ios/ [ Skip ] fast/events/ios [ Skip ] fast/events/touch/ios [ Skip ] fast/scrolling/ios [ Skip ] Added: trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt (0 => 209867) --- trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt (rev 0) +++ trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed-expected.txt 2016-12-15 19:19:51 UTC (rev 209867) @@ -0,0 +1,3 @@ +Layout viewport: {"top":746.703125,"right":320,"bottom":1314.703125,"left":0,"width":320,"height":568} +Visual viewport: {"top":747,"right":220,"bottom":1138,"left":0,"width":220,"height":391} + Added: trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed.html (0 => 209867) --- trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed.html (rev 0) +++ trunk/LayoutTests/fast/visual-viewport/ios/zoomed-focus-in-fixed.html 2016-12-15 19:19:51 UTC (rev 209867) @@ -0,0 +1,73 @@ + + + + + + +b
[webkit-changes] [209866] trunk
Title: [209866] trunk Revision 209866 Author keith_mil...@apple.com Date 2016-12-15 11:17:00 -0800 (Thu, 15 Dec 2016) Log Message Fix 64-bit shift family Wasm opcodes https://bugs.webkit.org/show_bug.cgi?id=165902 Reviewed by Geoffrey Garen. JSTests: Add tests for shift family of instructions. Since we can't generate i64 values to pass to wasm we only compile the code for those functions. Attempting to generate any i64 code using these instructions would have been enough to cause the B3 Validation error anyway. * wasm/assert.js: * wasm/function-tests/rotl.js: Added. * wasm/function-tests/rotr.js: Added. * wasm/function-tests/shl.js: Added. * wasm/function-tests/shr-s.js: Added. * wasm/function-tests/shr-u.js: Added. * wasm/wasm.json: Source/_javascript_Core: The Int64 versions of the shift family B3 opcodes take an Int32 for the shift value. Wasm, however, takes an i64, so we need to Trunc the shift value. Also, this fixes a bug where shr_u mapped to signed shift and shr_s mapped to the unsigned shift. * wasm/wasm.json: Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/wasm/assert.js trunk/JSTests/wasm/wasm.json trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/wasm/wasm.json Added Paths trunk/JSTests/wasm/function-tests/rotl.js trunk/JSTests/wasm/function-tests/rotr.js trunk/JSTests/wasm/function-tests/shl.js trunk/JSTests/wasm/function-tests/shr-s.js trunk/JSTests/wasm/function-tests/shr-u.js Diff Modified: trunk/JSTests/ChangeLog (209865 => 209866) --- trunk/JSTests/ChangeLog 2016-12-15 18:37:18 UTC (rev 209865) +++ trunk/JSTests/ChangeLog 2016-12-15 19:17:00 UTC (rev 209866) @@ -1,3 +1,24 @@ +2016-12-15 Keith Miller + +Fix 64-bit shift family Wasm opcodes +https://bugs.webkit.org/show_bug.cgi?id=165902 + +Reviewed by Geoffrey Garen. + +Add tests for shift family of instructions. Since +we can't generate i64 values to pass to wasm we only compile +the code for those functions. Attempting to generate any i64 +code using these instructions would have been enough to cause +the B3 Validation error anyway. + +* wasm/assert.js: +* wasm/function-tests/rotl.js: Added. +* wasm/function-tests/rotr.js: Added. +* wasm/function-tests/shl.js: Added. +* wasm/function-tests/shr-s.js: Added. +* wasm/function-tests/shr-u.js: Added. +* wasm/wasm.json: + 2016-12-14 Keith Miller WebAssembly: test_BuilderJSON.js is broken Modified: trunk/JSTests/wasm/assert.js (209865 => 209866) --- trunk/JSTests/wasm/assert.js 2016-12-15 18:37:18 UTC (rev 209865) +++ trunk/JSTests/wasm/assert.js 2016-12-15 19:17:00 UTC (rev 209866) @@ -79,6 +79,16 @@ _fail(`Not the same: "${lhs}" and "${rhs}"`, msg); }; +const canonicalizeI32 = (number) => { +if (Math.round(number) === number && number >= 2 ** 31) +number = number - 2 ** 32; +return number; +} + +export const eqI32 = (lhs, rhs, msg) => { +return eq(canonicalizeI32(lhs), canonicalizeI32(rhs), msg); +}; + export const ge = (lhs, rhs, msg) => { isNotUndef(lhs); isNotUndef(rhs); Added: trunk/JSTests/wasm/function-tests/rotl.js (0 => 209866) --- trunk/JSTests/wasm/function-tests/rotl.js (rev 0) +++ trunk/JSTests/wasm/function-tests/rotl.js 2016-12-15 19:17:00 UTC (rev 209866) @@ -0,0 +1,32 @@ +import * as assert from '../assert.js'; +import Builder from '../Builder.js'; + +const builder = (new Builder()) + .Type().End() + .Function().End() + .Export() + .Function("i32Rotl") + .Function("i64Rotl") + .End() + .Code() + .Function("i32Rotl", { params: ["i32", "i32"], ret: "i32" }) + .GetLocal(0) + .GetLocal(1) + .I32Rotl() + .End() + + .Function("i64Rotl", { params: ["i64", "i64"], ret: "i64" }) + .GetLocal(0) + .GetLocal(1) + .I64Rotl() + .End() + + .End(); + +const bin = builder.WebAssembly().get(); +const module = new WebAssembly.Module(bin); +const instance = new WebAssembly.Instance(module); +assert.eqI32(instance.exports.i32Rotl(1, 1), 2); +assert.eqI32(instance.exports.i32Rotl(1, 2), 4); +assert.eqI32(instance.exports.i32Rotl(0xf, 2), 0x3c); +assert.eqI32(instance.exports.i32Rotl(0xf000, 1), 0xe001); Added: trunk/JSTests/wasm/function-tests/rotr.js (0 => 209866) --- trunk/JSTests/wasm/function-tests/rotr.js (rev 0) +++ trunk/JSTests/wasm/function-tests/rotr.js 2016-12-15 19:17:00 UTC (rev 209866) @@ -0,0 +1,31 @@ +import * as assert from '../assert.js'; +import Builder from '../Builder.js'; + +const builder = (new Builder()) + .Type().End() + .Function().End() + .Export() + .Function("i32Rotr") + .Function("i64Rotr") + .End() + .Code() + .Function("i32Rotr", { params: ["i32", "i32"], ret: "i
[webkit-changes] [209865] trunk/Source
Title: [209865] trunk/Source Revision 209865 Author akl...@apple.com Date 2016-12-15 10:37:18 -0800 (Thu, 15 Dec 2016) Log Message Always clear RenderLayer backing stores when going into page cache. Reviewed by Simon Fraser. Source/WebCore: We were already doing this for the iOS and GTK+ ports, let's do it everywhere for consistency, and a bit of memory usage improvement. This patch just removes the setting and always calls FrameView::clearBackingStores() when there is composited content going into page cache. * history/CachedFrame.cpp: (WebCore::CachedFrame::CachedFrame): * history/PageCache.h: (WebCore::PageCache::shouldClearBackingStores): Deleted. (WebCore::PageCache::setShouldClearBackingStores): Deleted. Source/WebKit/mac: * WebView/WebView.mm: (+[WebView _setCacheModel:]): Source/WebKit2: * WebProcess/WebProcess.cpp: (WebKit::WebProcess::WebProcess): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/history/CachedFrame.cpp trunk/Source/WebCore/history/PageCache.h trunk/Source/WebKit/mac/ChangeLog trunk/Source/WebKit/mac/WebView/WebView.mm trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/WebProcess/WebProcess.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (209864 => 209865) --- trunk/Source/WebCore/ChangeLog 2016-12-15 17:25:53 UTC (rev 209864) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 18:37:18 UTC (rev 209865) @@ -1,3 +1,22 @@ +2016-12-15 Andreas Kling + +Always clear RenderLayer backing stores when going into page cache. + + +Reviewed by Simon Fraser. + +We were already doing this for the iOS and GTK+ ports, let's do it everywhere +for consistency, and a bit of memory usage improvement. + +This patch just removes the setting and always calls FrameView::clearBackingStores() +when there is composited content going into page cache. + +* history/CachedFrame.cpp: +(WebCore::CachedFrame::CachedFrame): +* history/PageCache.h: +(WebCore::PageCache::shouldClearBackingStores): Deleted. +(WebCore::PageCache::setShouldClearBackingStores): Deleted. + 2016-12-15 Darin Adler Remove custom binding for MediaDevices Modified: trunk/Source/WebCore/history/CachedFrame.cpp (209864 => 209865) --- trunk/Source/WebCore/history/CachedFrame.cpp 2016-12-15 17:25:53 UTC (rev 209864) +++ trunk/Source/WebCore/history/CachedFrame.cpp 2016-12-15 18:37:18 UTC (rev 209865) @@ -164,7 +164,7 @@ frame.loader().client().savePlatformDataToCachedFrame(this); -if (m_isComposited && PageCache::singleton().shouldClearBackingStores()) +if (m_isComposited) frame.view()->clearBackingStores(); // documentWillSuspendForPageCache() can set up a layout timer on the FrameView, so clear timers after that. Modified: trunk/Source/WebCore/history/PageCache.h (209864 => 209865) --- trunk/Source/WebCore/history/PageCache.h 2016-12-15 17:25:53 UTC (rev 209864) +++ trunk/Source/WebCore/history/PageCache.h 2016-12-15 18:37:18 UTC (rev 209865) @@ -66,9 +66,6 @@ void markPagesForCaptionPreferencesChanged(); #endif -bool shouldClearBackingStores() const { return m_shouldClearBackingStores; } -void setShouldClearBackingStores(bool flag) { m_shouldClearBackingStores = flag; } - private: PageCache() = default; // Use singleton() instead. ~PageCache() = delete; // Make sure nobody accidentally calls delete -- WebCore does not delete singletons. @@ -79,7 +76,6 @@ ListHashSet> m_items; unsigned m_maxSize {0}; -bool m_shouldClearBackingStores {false}; friend class WTF::NeverDestroyed; }; Modified: trunk/Source/WebKit/mac/ChangeLog (209864 => 209865) --- trunk/Source/WebKit/mac/ChangeLog 2016-12-15 17:25:53 UTC (rev 209864) +++ trunk/Source/WebKit/mac/ChangeLog 2016-12-15 18:37:18 UTC (rev 209865) @@ -1,3 +1,13 @@ +2016-12-15 Andreas Kling + +Always clear RenderLayer backing stores when going into page cache. + + +Reviewed by Simon Fraser. + +* WebView/WebView.mm: +(+[WebView _setCacheModel:]): + 2016-12-12 Alex Christensen Remove unused workaround for Silverlight Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (209864 => 209865) --- trunk/Source/WebKit/mac/WebView/WebView.mm 2016-12-15 17:25:53 UTC (rev 209864) +++ trunk/Source/WebKit/mac/WebView/WebView.mm 2016-12-15 18:37:18 UTC (rev 209865) @@ -8520,7 +8520,6 @@ auto& pageCache = PageCache::singleton(); pageCache.setMaxSize(pageCacheSize); #if PLATFORM(IOS) -pageCache.setShouldClearBackingStores(true); nsurlCacheMemoryCapacity = std::max(nsurlCacheMemoryCapacity, [nsurlCache memoryCapacity]); CFURLCacheRef cfCache; if ([nsurlCache respondsToSelector:@selector(_CFURLCache)] && (cfCache = [nsurlCache _CFURLCache])) Modified: trunk/Source/WebKit2/ChangeLog (209864 => 209865) --- trunk/Source/WebKit2/ChangeLog 2016-12-15 17:25:53 UTC (rev 209864) +++ trunk/Source/
[webkit-changes] [209864] trunk
Title: [209864] trunk Revision 209864 Author da...@apple.com Date 2016-12-15 09:25:53 -0800 (Thu, 15 Dec 2016) Log Message Remove custom binding for MediaDevices https://bugs.webkit.org/show_bug.cgi?id=165894 Reviewed by Eric Carlson. Source/WebCore: Removes the explicit code to parse the MediaStreamConstraints and MediaTrackConstraints. Next step could be to change the internal code to use the structs from bindings directly so we don't need code to convert to an internal format. * CMakeLists.txt: Added MediaTrackConstraints.idl and MediaTrackConstraints.cpp, removed JSMediaDevicesCustom.cpp. * DerivedSources.make: Added MediaTrackConstraints.idl. Also sorted list of IDL files and fixed use of tabs. * Modules/mediastream/MediaDevices.cpp: (WebCore::createMediaConstraintsImpl): Added. (WebCore::MediaDevices::getUserMedia): Changed this function to take arguments that are generated by the bindings script, and call createMediaConstraintsImpl to convert into the internal data structure. * Modules/mediastream/MediaDevices.h: Added StreamConstraints struct and changed getUserMedia to take that as specified in the IDL. * Modules/mediastream/MediaDevices.idl: Added definition of the MediaStreamConstraints dictionary. Removed [Custom] from getUserMedia. * Modules/mediastream/MediaStream.cpp: (WebCore::MediaStream::MediaStream): Pass a reference to addObserver. (WebCore::MediaStream::~MediaStream): Pass a rference to removeObserver. (WebCore::MediaStream::internalAddTrack): Ditto. (WebCore::MediaStream::internalRemoveTrack): Ditto. * Modules/mediastream/MediaStreamTrack.cpp: (WebCore::createMediaConstraintsImpl): Added. (WebCore::MediaStreamTrack::applyConstraints): Changed to take an optional MediaTrackConstraints argument and call createMediaConstraintsImpl to convert into the internal data structure. Also merged the multiple overloads of this all into a single function, used auto to make the code easier to read, and moved the code that stores new constrains into the success handling, since the specification says that's the only case where we should store it. (WebCore::MediaStreamTrack::addObserver): Take a reference instead of a pointer. (WebCore::MediaStreamTrack::removeObserver): Ditto. * Modules/mediastream/MediaStreamTrack.h: Removed many unneeded includes. Changed getConstraints to return const MediaTrackConstraints&, applyConstraints to take an optional MediaTrackConstraints, add/removeObserver to take a reference rather than a pointer, and changed m_constraints to be a MediaTrackConstraints instead of a RefPtr. * Modules/mediastream/MediaStreamTrack.idl: Removed [Custom] from getConstraints and applyConstraints. * Modules/mediastream/MediaTrackConstraints.cpp: Added. (WebCore::set): Overloaded function to set constriaints in a MediaTrackConstraintSetMap. (WebCore::convertToInternalForm): Helper function that takes a MediaTrackConstraintSet and turns it into a MediaTrackConstraintSetMap. (WebCore::convertAdvancedToInternalForm): More of the same, but for vectors. (WebCore::createMediaConstraintsImpl): Top level function. Calls the other functions and then MediaConstraintsImpl::create. * Modules/mediastream/MediaTrackConstraints.h: Added. Contains all the structures and type definitions for the dictionaries defined in the IDL file, and also the createMediaConstraintsImpl function declaration. * Modules/mediastream/MediaTrackConstraints.idl: Added. Contains the MediaTrackConstraints and all the other dictionaries and typedefs that are needed to define that dictionary. * Modules/mediastream/UserMediaRequest.cpp: (WebCore::UserMediaRequest::start): Changed to not depend on MediaDevices::Promise. (WebCore::UserMediaRequest::UserMediaRequest): Ditto. (WebCore::isSecure): Rearranged to be easier to understand. (WebCore::UserMediaRequest::start): Removed a local variable for simplicity. (WebCore::UserMediaRequest::document): Removed a redundant null check. * Modules/mediastream/UserMediaRequest.h: Reduced includes, changed to not depend on MediaDevices::Promise, removing the reason to include MediaDevices.h. * WebCore.xcodeproj/project.pbxproj: Updated to remove old files and add new ones. * bindings/js/JSBindingsAllInOne.cpp: Removed JSMediaDevicesCustom.cpp. * bindings/js/JSMediaDevicesCustom.cpp: Removed. * bindings/js/JSMediaDevicesCustom.h: Removed. * bindings/js/JSMediaStreamTrackCustom.cpp: (WebCore::JSMediaStreamTrack::applyConstraints): Deleted. (WebCore::JSMediaStreamTrack::getConstraints): Deleted. * bindings/scripts/CodeGenerator.pm: (ProcessDocument): Updated to allow multiple standalone dictionaries, as long as the name of one of the dictionaries matches the name of the file. * bindings/scripts/CodeGeneratorJS.pm: (GenerateDictionary): Added "other dictionaries" argument so we can support files with multiple dictionaries in them. (GenerateDictionariesHeaderContent): Completed support for dictionaries that are not named after a top level interface by added one more check for a
[webkit-changes] [209863] trunk/JSTests
Title: [209863] trunk/JSTests Revision 209863 Author keith_mil...@apple.com Date 2016-12-15 08:53:38 -0800 (Thu, 15 Dec 2016) Log Message WebAssembly: test_BuilderJSON.js is broken https://bugs.webkit.org/show_bug.cgi?id=165893 Reviewed by Michael Saboff. * wasm/Builder.js: (const._isValidValue): * wasm/self-test/test_BuilderJSON.js: Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/wasm/Builder.js trunk/JSTests/wasm/self-test/test_BuilderJSON.js Diff Modified: trunk/JSTests/ChangeLog (209862 => 209863) --- trunk/JSTests/ChangeLog 2016-12-15 15:46:13 UTC (rev 209862) +++ trunk/JSTests/ChangeLog 2016-12-15 16:53:38 UTC (rev 209863) @@ -1,5 +1,16 @@ 2016-12-14 Keith Miller +WebAssembly: test_BuilderJSON.js is broken +https://bugs.webkit.org/show_bug.cgi?id=165893 + +Reviewed by Michael Saboff. + +* wasm/Builder.js: +(const._isValidValue): +* wasm/self-test/test_BuilderJSON.js: + +2016-12-14 Keith Miller + Unreviewed, fix test. * wasm/function-tests/i32-const.js: Modified: trunk/JSTests/wasm/Builder.js (209862 => 209863) --- trunk/JSTests/wasm/Builder.js 2016-12-15 15:46:13 UTC (rev 209862) +++ trunk/JSTests/wasm/Builder.js 2016-12-15 16:53:38 UTC (rev 209863) @@ -25,6 +25,7 @@ import * as assert from 'assert.js'; import * as BuildWebAssembly from 'Builder_WebAssemblyBinary.js'; +import * as LLB from 'LowLevelBinary.js'; import * as WASM from 'WASM.js'; const _toJavaScriptName = name => { @@ -36,7 +37,7 @@ const _isValidValue = (value, type) => { switch (type) { // We allow both signed and unsigned numbers. -case "i32": return -(2 ** 31) <= value && value < 2 ** 32; +case "i32": return Math.round(value) === value && LLB.varint32Min <= value && value <= LLB.varuint32Max; case "i64": throw new Error(`Unimplemented: value check for ${type}`); // FIXME https://bugs.webkit.org/show_bug.cgi?id=163420 64-bit values case "f32": return typeof(value) === "number" && isFinite(value); case "f64": return typeof(value) === "number" && isFinite(value); @@ -279,7 +280,7 @@ const expect = expectedImms[idx]; switch (expect.name) { case "function_index": -assert.truthy(_isValidValue(got, "i32"), `Invalid value on ${op}: got "${got}", expected i32`); +assert.truthy(_isValidValue(got, "i32") && got >= 0, `Invalid value on ${op}: got "${got}", expected non-negative i32`); // FIXME check function indices. https://bugs.webkit.org/show_bug.cgi?id=163421 break; case "local_index": break; // improve checking https://bugs.webkit.org/show_bug.cgi?id=163421 Modified: trunk/JSTests/wasm/self-test/test_BuilderJSON.js (209862 => 209863) --- trunk/JSTests/wasm/self-test/test_BuilderJSON.js 2016-12-15 15:46:13 UTC (rev 209862) +++ trunk/JSTests/wasm/self-test/test_BuilderJSON.js 2016-12-15 16:53:38 UTC (rev 209863) @@ -482,11 +482,11 @@ (function CallInvalid() { for (let c of [-1, 0x1, "0", {}, Infinity, -Infinity, NaN, -NaN, null]) -assertOpThrows(f => f.Call(c), `Expected truthy: Invalid value on call: got "${c}", expected i32`); +assertOpThrows(f => f.Call(c), `Expected truthy: Invalid value on call: got "${c}", expected non-negative i32`); })(); (function I32ConstValid() { -for (let c of [0, 1, 2, 42, 1337, 0xFF, 0x, 0x7FFF, 0xFFFE, 0x]) { +for (let c of [-100, -1, 0, 1, 2, 42, 1337, 0xFF, 0x, 0x7FFF, 0xFFFE, 0x]) { const b = (new Builder()).Type().End().Code().Function().I32Const(c).Return().End().End(); const j = JSON.parse(b.json()); assert.eq(j.section[1].data[0].code[0].name, "i32.const"); @@ -497,7 +497,7 @@ })(); (function I32ConstInvalid() { -for (let c of [-1, 0x1, 0.1, -0.1, "0", {}, Infinity, null]) +for (let c of [0x1, 0.1, -0.1, "0", {}, Infinity, null]) assertOpThrows(f => f.I32Const(c), `Expected truthy: Invalid value on i32.const: got "${c}", expected i32`); })(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209862] trunk/Source
Title: [209862] trunk/Source Revision 209862 Author hy...@apple.com Date 2016-12-15 07:46:13 -0800 (Thu, 15 Dec 2016) Log Message [CSS Parser] Enable CSS Deferred Parsing https://bugs.webkit.org/show_bug.cgi?id=165869 Reviewed by Sam Weinig. Source/WebCore: Enable CSS deferred parsing once again. It's now behind a pref, so it's easy to flip off and on. To address the memory regression that caused the previous rollout, the tokenizer is no longer retained. Instead the sheet text and escaped strings are retained by CSSDeferredParser, and then DeferredStyleProperties and DeferredStyleGroupRuleList make copies of the tokens from the original tokenization process. As the rules get parsed, these tokens get thrown away. This means that instead of the entire set of tokens staying in memory as long as even one unparsed rule remained, now only the tokens that still need parsing will remain alive. Unparsed rules will consume slightly more memory than parsed rules, but the more unparsed rules you have, the bigger the performance win as well, so this is a tradeoff. Given that the parsing speed is going up by anywhere from 25-40% on cold loads of pages (where all stylesheets have to parse), this seems worth it to me. * css/parser/CSSParserMode.h: * page/Settings.in: Source/WebKit2: * Shared/WebPreferencesDefinitions.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/parser/CSSParserMode.h trunk/Source/WebCore/page/Settings.in trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h Diff Modified: trunk/Source/WebCore/ChangeLog (209861 => 209862) --- trunk/Source/WebCore/ChangeLog 2016-12-15 13:47:57 UTC (rev 209861) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 15:46:13 UTC (rev 209862) @@ -1,3 +1,33 @@ +2016-12-15 Dave Hyatt + +[CSS Parser] Enable CSS Deferred Parsing +https://bugs.webkit.org/show_bug.cgi?id=165869 + +Reviewed by Sam Weinig. + +Enable CSS deferred parsing once again. It's now behind a pref, +so it's easy to flip off and on. + +To address the memory regression that caused the previous rollout, +the tokenizer is no longer retained. Instead the sheet text and escaped +strings are retained by CSSDeferredParser, and then DeferredStyleProperties +and DeferredStyleGroupRuleList make copies of the tokens from the original +tokenization process. As the rules get parsed, these tokens get thrown +away. + +This means that instead of the entire set of tokens staying in memory +as long as even one unparsed rule remained, now only the tokens that +still need parsing will remain alive. + +Unparsed rules will consume slightly more memory than parsed rules, but +the more unparsed rules you have, the bigger the performance win as +well, so this is a tradeoff. Given that the parsing speed is going up +by anywhere from 25-40% on cold loads of pages (where all stylesheets +have to parse), this seems worth it to me. + +* css/parser/CSSParserMode.h: +* page/Settings.in: + 2016-12-15 Alejandro G. Castro [OWR] Unskip fast/mediastream/MediaStream-video-element-track-stop.html Modified: trunk/Source/WebCore/css/parser/CSSParserMode.h (209861 => 209862) --- trunk/Source/WebCore/css/parser/CSSParserMode.h 2016-12-15 13:47:57 UTC (rev 209861) +++ trunk/Source/WebCore/css/parser/CSSParserMode.h 2016-12-15 15:46:13 UTC (rev 209862) @@ -107,7 +107,7 @@ bool useLegacyBackgroundSizeShorthandBehavior { false }; bool springTimingFunctionEnabled { false }; -bool deferredCSSParserEnabled { false }; +bool deferredCSSParserEnabled { true }; URL completeURL(const String& url) const { Modified: trunk/Source/WebCore/page/Settings.in (209861 => 209862) --- trunk/Source/WebCore/page/Settings.in 2016-12-15 13:47:57 UTC (rev 209861) +++ trunk/Source/WebCore/page/Settings.in 2016-12-15 15:46:13 UTC (rev 209862) @@ -249,7 +249,7 @@ newBlockInsideInlineModelEnabled initial=false, setNeedsStyleRecalcInAllFrames=1 -deferredCSSParserEnabled initial=false +deferredCSSParserEnabled initial=true httpEquivEnabled initial=true Modified: trunk/Source/WebKit2/ChangeLog (209861 => 209862) --- trunk/Source/WebKit2/ChangeLog 2016-12-15 13:47:57 UTC (rev 209861) +++ trunk/Source/WebKit2/ChangeLog 2016-12-15 15:46:13 UTC (rev 209862) @@ -1,3 +1,12 @@ +2016-12-15 Dave Hyatt + +[CSS Parser] Enable CSS Deferred Parsing +https://bugs.webkit.org/show_bug.cgi?id=165869 + +Reviewed by Sam Weinig. + +* Shared/WebPreferencesDefinitions.h: + 2016-12-14 Andreas Kling Only send Messages::WebPageProxy::DidSaveToPageCache once when entering page cache. Modified: trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h (209861 => 209862) --- trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h 2016-12-15 13:47:57 U
[webkit-changes] [209860] trunk
Title: [209860] trunk Revision 209860 Author commit-qu...@webkit.org Date 2016-12-15 05:15:33 -0800 (Thu, 15 Dec 2016) Log Message [OWR] Unskip fast/mediastream/MediaStream-video-element-track-stop.html https://bugs.webkit.org/show_bug.cgi?id=165316 Patch by Alejandro G. Castro on 2016-12-15 Reviewed by Philippe Normand. Source/WebCore: Fixed the ended support of the video element in the OWR player and fixed the videoTracks support. Now the OW player properly adds and removes the audio and video tracks. Added the getSettings support to the mediastream interface. Solved also the size handling in some of the enable/muted situations. Unskipping fast/mediastream/MediaStream-video-element-track-stop.html. * platform/GStreamer.cmake: Added the new RealtimeMediaSourceOwr.cpp with the new code handling the settings. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.cpp: (WebCore::MediaPlayerPrivateGStreamerOwr::~MediaPlayerPrivateGStreamerOwr): Release the new video and audio maps that creates a relationship of the mediastream tracks with the mediatracks of the video element. (WebCore::MediaPlayerPrivateGStreamerOwr::play): Set ended to false when we start playing. (WebCore::MediaPlayerPrivateGStreamerOwr::load): Create the media tracks to the player so that the videoTracks API returns it, and add an entry in the map to be able to restore it using the mediastream track. (WebCore::MediaPlayerPrivateGStreamerOwr::disableMediaTracks): Move some part of the stop function to this one in order to use it in pause method and avoid changing the video selection in that case. (WebCore::MediaPlayerPrivateGStreamerOwr::stop): Now we call the function disableMediaTracks and we also change teh selected videoTrack. (WebCore::MediaPlayerPrivateGStreamerOwr::trackEnded): For videoTrack reset the size and the selected element. In case there is no media playing we Make sure we set the ended variable to true and call the timeChange to modify the state of the player. (WebCore::MediaPlayerPrivateGStreamerOwr::trackEnabledChanged): Handle properly the situation when the user changed the enabled value, we disable the media. (WebCore::MediaPlayerPrivateGStreamerOwr::setSize): Modify the size of the source. (WebCore::MediaPlayerPrivateGStreamerOwr::naturalSize): Overrided to make sure we return a size even when the sample is not ready for gst. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.h: Added the ended attribute and the maps. * platform/mediastream/openwebrtc/MediaEndpointOwr.cpp: (WebCore::MediaEndpointOwr::createMutedRemoteSource): Use the new realtime video and audio sources classes, this new classes implement the settings of each type of media element. * platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp: (WebCore::RealtimeMediaSourceCenterOwr::mediaSourcesAvailable): Use the new audio and video source classes instead of the general one in order to handle the settings properly. * platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.cpp: Added (WebCore::RealtimeMediaSourceOwr::settings): Initialize using the subclass and return the new currentSettings attribute. (WebCore::RealtimeMediaSourceOwr::supportedConstraints): Call the subclass initialization of the supportedSettings. * platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.h: (WebCore::RealtimeMediaSourceOwr::initializeSettings): Added to initialize the settings before returning the value. Implemented in the subclass. (WebCore::RealtimeMediaSourceOwr::initializeSupportedConstraints): Added to initialize the supported settings of the media. Implemented in the subclass. (WebCore::RealtimeMediaSourceOwr::settings): Moved to the cpp file, implemented using the initialize functions of the subclass * platform/mediastream/openwebrtc/RealtimeVideoSourceOwr.h: Added this new class to handle the settings of the video elements. The class initializes the settings and the supportedSettings. * platform/mediastream/openwebrtc/RealtimeAudioSourceOwr.h: Added this new class to handle the settings of the audio elements. The class initializes the settings and the supportedSettings. LayoutTests: * platform/gtk/TestExpectations: Unskipped the test and moved the stop one, now it does not timeout because we correctly handle the ended value but still fails, we need more features in the mock classes for owr. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/GStreamer.cmake trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.h trunk/Source/WebCore/platform/mediastream/openwebrtc/MediaEndpointOwr.cpp trunk/Source/WebCore/platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp trunk/Source/WebCore/platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.h Added Paths trunk/Source/WebCore/platform/mediastream/openwebrtc/R
[webkit-changes] [209859] trunk/Tools
Title: [209859] trunk/Tools Revision 209859 Author csaave...@igalia.com Date 2016-12-15 05:05:44 -0800 (Thu, 15 Dec 2016) Log Message [GTK] Ensure gst* docs are not built with update-webkitgtk-libs https://bugs.webkit.org/show_bug.cgi?id=165855 Reviewed by Philippe Normand. GStreamer's autogen.sh enables gtk-doc always so we end up building docs even if we disable them. Use the configure script instead, since we build from packages and these include it already. * gtk/jhbuild.modules: Use shipped configure instead of autogen.sh for upstream gstreamer packages. Modified Paths trunk/Tools/ChangeLog trunk/Tools/gtk/jhbuild.modules Diff Modified: trunk/Tools/ChangeLog (209858 => 209859) --- trunk/Tools/ChangeLog 2016-12-15 10:28:55 UTC (rev 209858) +++ trunk/Tools/ChangeLog 2016-12-15 13:05:44 UTC (rev 209859) @@ -1,3 +1,17 @@ +2016-12-15 Claudio Saavedra + +[GTK] Ensure gst* docs are not built with update-webkitgtk-libs +https://bugs.webkit.org/show_bug.cgi?id=165855 + +Reviewed by Philippe Normand. + +GStreamer's autogen.sh enables gtk-doc always so we end up building +docs even if we disable them. Use the configure script instead, since +we build from packages and these include it already. + +* gtk/jhbuild.modules: Use shipped configure instead of autogen.sh for +upstream gstreamer packages. + 2016-12-15 Alex Christensen REGRESSION (r208902) Null pointer dereference in wkIsPublicSuffix Modified: trunk/Tools/gtk/jhbuild.modules (209858 => 209859) --- trunk/Tools/gtk/jhbuild.modules 2016-12-15 10:28:55 UTC (rev 209858) +++ trunk/Tools/gtk/jhbuild.modules 2016-12-15 13:05:44 UTC (rev 209859) @@ -347,7 +347,7 @@ md5sum="af1bf3dab9e69f3c36f389285e2a12a1"/> - + @@ -361,7 +361,7 @@ - autogen-sh="autogen.sh" + autogen-sh="configure" autogenargs="--disable-examples --disable-gtk-doc"> @@ -375,7 +375,7 @@ md5sum="20cc8231609318310f2a55f64c86cbb4"/> - + @@ -396,7 +396,7 @@ - + @@ -413,7 +413,7 @@ - + ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [209858] trunk/Source/WTF
Title: [209858] trunk/Source/WTF Revision 209858 Author utatane@gmail.com Date 2016-12-15 02:28:55 -0800 (Thu, 15 Dec 2016) Log Message [JSC] Optimize Kraken stringify https://bugs.webkit.org/show_bug.cgi?id=165857 Reviewed by Darin Adler. Kraken json-stringify-tinderbox performance heavily relies on StringBuilder::appendQuotedJSONString. According to the result produced by Linux `perf`, it occupies 28% of execution time. We tighten the hottest loop in the above function. We create the super fast path for non escaping case. And add " and \ cases (since including " in the string is common). Then we fallback to the slow case. It improves the performance 5.5% in Kraken json-stringify-tinderbox in MBP. Performance result in my MBP (dandelion). Collected 100 samples per benchmark/VM, with 100 VM invocations per benchmark. Emitted a call to gc() between sample measurements. Used 1 benchmark iteration per VM invocation for warm-up. Used the jsc-specific preciseTime() function to get microsecond-level timing. Reporting benchmark execution times with 95% confidence intervals in milliseconds. baseline patched json-stringify-tinderbox29.243+-0.241 ^ 27.701+-0.235 ^ definitely 1.0557x faster 29.243+-0.241 ^ 27.701+-0.235 ^ definitely 1.0557x faster Performance result in my Linux laptop (hanayamata). Collected 100 samples per benchmark/VM, with 100 VM invocations per benchmark. Emitted a call to gc() between sample measurements. Used 1 benchmark iteration per VM invocation for warm-up. Used the jsc-specific preciseTime() function to get microsecond-level timing. Reporting benchmark execution times with 95% confidence intervals in milliseconds. baseline patched json-stringify-tinderbox26.711+-0.475 ^ 25.255+-0.034 ^ definitely 1.0577x faster 26.711+-0.475 ^ 25.255+-0.034 ^ definitely 1.0577x faster * wtf/text/StringBuilder.cpp: (WTF::appendQuotedJSONStringInternalSlow): (WTF::appendQuotedJSONStringInternal): Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/text/StringBuilder.cpp Diff Modified: trunk/Source/WTF/ChangeLog (209857 => 209858) --- trunk/Source/WTF/ChangeLog 2016-12-15 08:19:47 UTC (rev 209857) +++ trunk/Source/WTF/ChangeLog 2016-12-15 10:28:55 UTC (rev 209858) @@ -1,3 +1,48 @@ +2016-12-15 Yusuke Suzuki + +[JSC] Optimize Kraken stringify +https://bugs.webkit.org/show_bug.cgi?id=165857 + +Reviewed by Darin Adler. + +Kraken json-stringify-tinderbox performance heavily relies on StringBuilder::appendQuotedJSONString. +According to the result produced by Linux `perf`, it occupies 28% of execution time. + +We tighten the hottest loop in the above function. We create the super fast path for non escaping case. +And add " and \ cases (since including " in the string is common). Then we fallback to the slow case. + +It improves the performance 5.5% in Kraken json-stringify-tinderbox in MBP. + +Performance result in my MBP (dandelion). + +Collected 100 samples per benchmark/VM, with 100 VM invocations per benchmark. Emitted a call to gc() +between sample measurements. Used 1 benchmark iteration per VM invocation for warm-up. Used the +jsc-specific preciseTime() function to get microsecond-level timing. Reporting benchmark execution times +with 95% confidence intervals in milliseconds. + + baseline patched + +json-stringify-tinderbox29.243+-0.241 ^ 27.701+-0.235 ^ definitely 1.0557x faster + +29.243+-0.241 ^ 27.701+-0.235 ^ definitely 1.0557x faster + +Performance result in my Linux laptop (hanayamata). + +Collected 100 samples per benchmark/VM, with 100 VM invocations per benchmark. Emitted a call to gc() +between sample measurements. Used 1 benchmark iteration per VM invocation for warm-up. Used the +jsc-specific preciseTime() function to get microsecond-level timing. Reporting benchmark execution times +with 95% confidence intervals in milliseconds. + + baseline patched + +json-stringify-tinderbox26.711+-0.475 ^ 25.255+-0.034 ^ definitely 1.0577x faster + +26.711+-0.475 ^ 25.255+-0.034 ^ definitely 1.0577x faster + +* wtf/text/StringBuilder.cpp: +(WTF::appendQuotedJSONStr
[webkit-changes] [209857] trunk
Title: [209857] trunk Revision 209857 Author achristen...@apple.com Date 2016-12-15 00:19:47 -0800 (Thu, 15 Dec 2016) Log Message REGRESSION (r208902) Null pointer dereference in wkIsPublicSuffix https://bugs.webkit.org/show_bug.cgi?id=165885 Reviewed by Darin Adler. Source/WebCore: wkIsPublicSuffix crashes if you give it a nil NSString*. This was possible before IDN2008 adoption, but it's more common now because domains like "r4---asdf.example.com" fail in uidna_nameToASCII but not in uidna_IDNToASCII. decodeHostName can return a nil NSString. We can't use it unchecked, so instead we use an algorithm that allows for decoding failures while still finding top privately controlled domains correctly. Tested by new API tests which crash before this change and verify the behavior matches behavior before r208902. * platform/mac/PublicSuffixMac.mm: (WebCore::isPublicSuffix): (WebCore::topPrivatelyControlledDomain): Tools: * TestWebKitAPI/Tests/WebCore/URLParser.cpp: (TestWebKitAPI::utf16String): Deleted. * TestWebKitAPI/Tests/mac/PublicSuffix.mm: (TestWebKitAPI::TEST_F): * TestWebKitAPI/WTFStringUtilities.h: (utf16String): Moved from URLParser to share with other tests. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/mac/PublicSuffixMac.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp trunk/Tools/TestWebKitAPI/Tests/mac/PublicSuffix.mm trunk/Tools/TestWebKitAPI/WTFStringUtilities.h Diff Modified: trunk/Source/WebCore/ChangeLog (209856 => 209857) --- trunk/Source/WebCore/ChangeLog 2016-12-15 08:17:17 UTC (rev 209856) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 08:19:47 UTC (rev 209857) @@ -1,5 +1,25 @@ 2016-12-15 Alex Christensen +REGRESSION (r208902) Null pointer dereference in wkIsPublicSuffix +https://bugs.webkit.org/show_bug.cgi?id=165885 + + +Reviewed by Darin Adler. + +wkIsPublicSuffix crashes if you give it a nil NSString*. +This was possible before IDN2008 adoption, but it's more common now +because domains like "r4---asdf.example.com" fail in uidna_nameToASCII but not in uidna_IDNToASCII. +decodeHostName can return a nil NSString. We can't use it unchecked, so instead we use an algorithm that allows +for decoding failures while still finding top privately controlled domains correctly. + +Tested by new API tests which crash before this change and verify the behavior matches behavior before r208902. + +* platform/mac/PublicSuffixMac.mm: +(WebCore::isPublicSuffix): +(WebCore::topPrivatelyControlledDomain): + +2016-12-15 Alex Christensen + Fix Windows WebGL build after r209832 * CMakeLists.txt: Modified: trunk/Source/WebCore/platform/mac/PublicSuffixMac.mm (209856 => 209857) --- trunk/Source/WebCore/platform/mac/PublicSuffixMac.mm 2016-12-15 08:17:17 UTC (rev 209856) +++ trunk/Source/WebCore/platform/mac/PublicSuffixMac.mm 2016-12-15 08:19:47 UTC (rev 209857) @@ -39,39 +39,21 @@ bool isPublicSuffix(const String& domain) { -return wkIsPublicSuffix(decodeHostName(domain)); +NSString *host = decodeHostName(domain); +return host && wkIsPublicSuffix(host); } String topPrivatelyControlledDomain(const String& domain) { -if (domain.isNull() || domain.isEmpty()) -return String(); - -NSString *host = decodeHostName(domain); - -if ([host _web_looksLikeIPAddress]) +if ([domain _web_looksLikeIPAddress]) return domain; -// Match the longest possible suffix. -bool hasTopLevelDomain = false; -NSCharacterSet *dot = [[NSCharacterSet characterSetWithCharactersInString:@"."] retain]; -NSRange nextDot = NSMakeRange(0, [host length]); -for (NSRange previousDot = [host rangeOfCharacterFromSet:dot]; previousDot.location != NSNotFound; nextDot = previousDot, previousDot = [host rangeOfCharacterFromSet:dot options:0 range:NSMakeRange(previousDot.location + previousDot.length, [host length] - (previousDot.location + previousDot.length))]) { -NSString *substring = [host substringFromIndex:previousDot.location + previousDot.length]; -if (wkIsPublicSuffix(substring)) { -hasTopLevelDomain = true; -break; -} +size_t separatorPosition; +for (unsigned labelStart = 0; (separatorPosition = domain.find('.', labelStart)) != notFound; labelStart = separatorPosition + 1) { +if (isPublicSuffix(domain.substring(separatorPosition + 1))) +return domain.substring(labelStart); } - -[dot release]; -if (!hasTopLevelDomain) -return String(); - -if (!nextDot.location) -return domain; - -return encodeHostName([host substringFromIndex:nextDot.location + nextDot.length]); +return String(); } } Modified: trunk/Tools/ChangeLog (209856 => 209857) --- trunk/Tools/ChangeLog 2016-12-15 08:17:17 UTC (rev 209856) +++ trunk/Tools/ChangeLog 2016-12-15 08:
[webkit-changes] [209856] trunk/Source
Title: [209856] trunk/Source Revision 209856 Author achristen...@apple.com Date 2016-12-15 00:17:17 -0800 (Thu, 15 Dec 2016) Log Message Fix Windows WebGL build after r209832 * CMakeLists.txt: Source/ThirdParty/ANGLE: * include/EGL/egl.h: * include/GLES2/gl2.h: Modified Paths trunk/Source/ThirdParty/ANGLE/CMakeLists.txt trunk/Source/ThirdParty/ANGLE/ChangeLog trunk/Source/ThirdParty/ANGLE/include/EGL/egl.h trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2.h trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog Diff Modified: trunk/Source/ThirdParty/ANGLE/CMakeLists.txt (209855 => 209856) --- trunk/Source/ThirdParty/ANGLE/CMakeLists.txt 2016-12-15 05:15:11 UTC (rev 209855) +++ trunk/Source/ThirdParty/ANGLE/CMakeLists.txt 2016-12-15 08:17:17 UTC (rev 209856) @@ -258,6 +258,7 @@ file(GLOB _files_ANGLE "${THIRDPARTY_DIR}/ANGLE/ANGLE/*.h") file(GLOB _files_egl "${THIRDPARTY_DIR}/ANGLE/include/egl/*.h") file(GLOB _files_GLES2 "${THIRDPARTY_DIR}/ANGLE/include/GLES2/*.h") +file(GLOB _files_GLES3 "${THIRDPARTY_DIR}/ANGLE/include/GLES3/*.h") file(GLOB _files_GLSLANG "${THIRDPARTY_DIR}/ANGLE/include/GLSLANG/*.h") file(GLOB _files_khr "${THIRDPARTY_DIR}/ANGLE/include/khr/*.h") foreach (_file ${_files_ANGLE}) @@ -269,6 +270,9 @@ foreach (_file ${_files_GLES2}) file(COPY ${_file} DESTINATION ${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE/include/GLES2) endforeach () +foreach (_file ${_files_GLES3}) +file(COPY ${_file} DESTINATION ${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE/include/GLES3) +endforeach () foreach (_file ${_files_GLSLANG}) file(COPY ${_file} DESTINATION ${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE/include/GLSLANG) endforeach () Modified: trunk/Source/ThirdParty/ANGLE/ChangeLog (209855 => 209856) --- trunk/Source/ThirdParty/ANGLE/ChangeLog 2016-12-15 05:15:11 UTC (rev 209855) +++ trunk/Source/ThirdParty/ANGLE/ChangeLog 2016-12-15 08:17:17 UTC (rev 209856) @@ -1,3 +1,11 @@ +2016-12-15 Alex Christensen + +Fix Windows WebGL build after r209832 + +* CMakeLists.txt: +* include/EGL/egl.h: +* include/GLES2/gl2.h: + 2016-12-14 Alex Christensen Progress towards using ANGLE to do WebGL rendering Modified: trunk/Source/ThirdParty/ANGLE/include/EGL/egl.h (209855 => 209856) --- trunk/Source/ThirdParty/ANGLE/include/EGL/egl.h 2016-12-15 05:15:11 UTC (rev 209855) +++ trunk/Source/ThirdParty/ANGLE/include/EGL/egl.h 2016-12-15 08:17:17 UTC (rev 209856) @@ -313,7 +313,7 @@ #endif /* EGL_VERSION_1_5 */ #if EGL_SOFT_LINKING -#include +#include #endif #ifdef __cplusplus Modified: trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2.h (209855 => 209856) --- trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2.h 2016-12-15 05:15:11 UTC (rev 209855) +++ trunk/Source/ThirdParty/ANGLE/include/GLES2/gl2.h 2016-12-15 08:17:17 UTC (rev 209856) @@ -522,7 +522,7 @@ typedef void (GL_APIENTRYP PFNGLVIEWPORTPROC) (GLint x, GLint y, GLsizei width, GLsizei height); #if defined(_MSC_VER) && !defined(ANGLE_WEBKIT_WIN) -#include +#include #else #ifdef GL_GLEXT_PROTOTYPES Modified: trunk/Source/WebCore/CMakeLists.txt (209855 => 209856) --- trunk/Source/WebCore/CMakeLists.txt 2016-12-15 05:15:11 UTC (rev 209855) +++ trunk/Source/WebCore/CMakeLists.txt 2016-12-15 08:17:17 UTC (rev 209856) @@ -788,8 +788,10 @@ if (WIN32 AND INTERNAL_BUILD) set(_javascript_Core_SCRIPTS_DIR "${CMAKE_BINARY_DIR}/../include/private/_javascript_Core/Scripts") +set(ANGLE_FORWARDING_HEADERS_DIR "${CMAKE_BINARY_DIR}/../include/private/ANGLE") else () set(_javascript_Core_SCRIPTS_DIR "${DERIVED_SOURCES_DIR}/ForwardingHeaders/_javascript_Core/Scripts") +set(ANGLE_FORWARDING_HEADERS_DIR "${DERIVED_SOURCES_DIR}/ForwardingHeaders/ANGLE") endif () set(WebCore_SOURCES @@ -3269,6 +3271,7 @@ endif () list(APPEND WebCore_INCLUDE_DIRECTORIES +"${ANGLE_FORWARDING_HEADERS_DIR}" "${WEBCORE_DIR}/platform/graphics/gpu" ) Modified: trunk/Source/WebCore/ChangeLog (209855 => 209856) --- trunk/Source/WebCore/ChangeLog 2016-12-15 05:15:11 UTC (rev 209855) +++ trunk/Source/WebCore/ChangeLog 2016-12-15 08:17:17 UTC (rev 209856) @@ -1,3 +1,9 @@ +2016-12-15 Alex Christensen + +Fix Windows WebGL build after r209832 + +* CMakeLists.txt: + 2016-12-14 Hunseop Jeong Unreviewed build fix after r209832 ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes