[webkit-changes] [226352] trunk
Title: [226352] trunk Revision 226352 Author joep...@webkit.org Date 2018-01-02 20:16:06 -0800 (Tue, 02 Jan 2018) Log Message Web Inspector: Slow open time enumerating system fonts (FontCache::systemFontFamilies) https://bugs.webkit.org/show_bug.cgi?id=180979 Reviewed by Matt Baker. Source/WebCore: * platform/graphics/cocoa/FontCacheCoreText.cpp: (WebCore::FontCache::systemFontFamilies): Switch to the original Mac algorithm before r180979 that uses CTFontManagerCopyAvailableFontFamilyNames. Previously this wasn't available on iOS but now it is. This is a performance improvement on both platforms, but significantly so on macOS. It also finds more, valid, family names. LayoutTests: * inspector/css/get-system-fonts.html: Cleanup the test a bit. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/inspector/css/get-system-fonts.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp Diff Modified: trunk/LayoutTests/ChangeLog (226351 => 226352) --- trunk/LayoutTests/ChangeLog 2018-01-03 03:59:16 UTC (rev 226351) +++ trunk/LayoutTests/ChangeLog 2018-01-03 04:16:06 UTC (rev 226352) @@ -1,3 +1,14 @@ +2018-01-02 Joseph Pecoraro + +Web Inspector: Slow open time enumerating system fonts (FontCache::systemFontFamilies) +https://bugs.webkit.org/show_bug.cgi?id=180979 + + +Reviewed by Matt Baker. + +* inspector/css/get-system-fonts.html: +Cleanup the test a bit. + 2018-01-02 Michael Catanzaro REGRESSION(r223253): Broke ResourceLoadStatistics layout tests for non-Cocoa ports Modified: trunk/LayoutTests/inspector/css/get-system-fonts.html (226351 => 226352) --- trunk/LayoutTests/inspector/css/get-system-fonts.html 2018-01-03 03:59:16 UTC (rev 226351) +++ trunk/LayoutTests/inspector/css/get-system-fonts.html 2018-01-03 04:16:06 UTC (rev 226352) @@ -28,7 +28,6 @@ - This test ensures that the inspector can enumerate system font families, and checks for the - existence of common fonts. +This test ensures that the inspector can enumerate system font families, and checks for the existence of common fonts. Modified: trunk/Source/WebCore/ChangeLog (226351 => 226352) --- trunk/Source/WebCore/ChangeLog 2018-01-03 03:59:16 UTC (rev 226351) +++ trunk/Source/WebCore/ChangeLog 2018-01-03 04:16:06 UTC (rev 226352) @@ -1,3 +1,19 @@ +2018-01-02 Joseph Pecoraro + +Web Inspector: Slow open time enumerating system fonts (FontCache::systemFontFamilies) +https://bugs.webkit.org/show_bug.cgi?id=180979 + + +Reviewed by Matt Baker. + +* platform/graphics/cocoa/FontCacheCoreText.cpp: +(WebCore::FontCache::systemFontFamilies): +Switch to the original Mac algorithm before r180979 that uses +CTFontManagerCopyAvailableFontFamilyNames. Previously this wasn't +available on iOS but now it is. This is a performance improvement on +both platforms, but significantly so on macOS. It also finds more, +valid, family names. + 2018-01-02 Yusuke Suzuki Unreviewed, fix GCC warning by using #include Modified: trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp (226351 => 226352) --- trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp 2018-01-03 03:59:16 UTC (rev 226351) +++ trunk/Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp 2018-01-03 04:16:06 UTC (rev 226352) @@ -413,12 +413,18 @@ return result; } +static inline bool fontNameIsSystemFont(CFStringRef fontName) +{ +return CFStringGetLength(fontName) > 0 && CFStringGetCharacterAtIndex(fontName, 0) == '.'; +} + static inline bool fontIsSystemFont(CTFontRef font) { if (CTFontDescriptorIsSystemUIFont(adoptCF(CTFontCopyFontDescriptor(font)).get())) return true; + auto name = adoptCF(CTFontCopyPostScriptName(font)); -return CFStringGetLength(name.get()) > 0 && CFStringGetCharacterAtIndex(name.get(), 0) == '.'; +return fontNameIsSystemFont(name.get()); } // These values were calculated by performing a linear regression on the CSS weights/widths/slopes and Core Text weights/widths/slopes of San Francisco. @@ -731,25 +737,24 @@ Vector FontCache::systemFontFamilies() { -// FIXME: -auto attributes = adoptCF(CFDictionaryCreate(kCFAllocatorDefault, nullptr, nullptr, 0, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks)); -auto emptyFontDescriptor = adoptCF(CTFontDescriptorCreateWithAttributes(attributes.get())); -auto matchedDescriptors = adoptCF(CTFontDescriptorCreateMatchingFontDescriptors(emptyFontDescriptor.get(), nullptr)); -if (!matchedDescriptors) -return { }; +Vector fontFamilies; -CFIndex numMatches = CFArrayGetCount(matchedDescriptors.get()); -if (!numMatches) -return { }; +auto availableFontFamilies = adoptCF(CTFontManagerCopyAvailableFontFamilyNames()); +CFIndex count = CFArrayGetC
[webkit-changes] [226351] trunk
Title: [226351] trunk Revision 226351 Author sbar...@apple.com Date 2018-01-02 19:59:16 -0800 (Tue, 02 Jan 2018) Log Message Incorrect assertion inside AccessCase https://bugs.webkit.org/show_bug.cgi?id=181200 Reviewed by Yusuke Suzuki. JSTests: * stress/setter-same-base-and-rhs-invalid-assertion-inside-access-case.js: Added. (ctor): (theFunc): (run): Source/_javascript_Core: Consider a PutById compiled to a setter in a function like so: ``` function foo(o) { o.f = o; } ``` The DFG will often assign the same registers to the baseGPR (o in o.f) and the valueRegsPayloadGPR (o in the RHS). The code totally works when these are assigned to the same register. However, we're asserting that they're not the same register. This patch just removes this invalid assertion. * bytecode/AccessCase.cpp: (JSC::AccessCase::generateImpl): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecode/AccessCase.cpp Added Paths trunk/JSTests/stress/setter-same-base-and-rhs-invalid-assertion-inside-access-case.js Diff Modified: trunk/JSTests/ChangeLog (226350 => 226351) --- trunk/JSTests/ChangeLog 2018-01-03 03:44:01 UTC (rev 226350) +++ trunk/JSTests/ChangeLog 2018-01-03 03:59:16 UTC (rev 226351) @@ -1,3 +1,16 @@ +2018-01-02 Saam Barati + +Incorrect assertion inside AccessCase +https://bugs.webkit.org/show_bug.cgi?id=181200 + + +Reviewed by Yusuke Suzuki. + +* stress/setter-same-base-and-rhs-invalid-assertion-inside-access-case.js: Added. +(ctor): +(theFunc): +(run): + 2018-01-02 Caio Lima [ESNext][BigInt] Implement BigIntConstructor and BigIntPrototype Added: trunk/JSTests/stress/setter-same-base-and-rhs-invalid-assertion-inside-access-case.js (0 => 226351) --- trunk/JSTests/stress/setter-same-base-and-rhs-invalid-assertion-inside-access-case.js (rev 0) +++ trunk/JSTests/stress/setter-same-base-and-rhs-invalid-assertion-inside-access-case.js 2018-01-03 03:59:16 UTC (rev 226351) @@ -0,0 +1,17 @@ +function ctor() {} +ctor.prototype.__defineSetter__("f", function () { }); + +function theFunc(o) { +o.f = o; +} +noInline(theFunc); +function run(o) { +theFunc(o); +} + +for (let i = 0; i < 10; ++i) { +run(new ctor()) +let o = new ctor(); +o.g = 54; +run(o); +} Modified: trunk/Source/_javascript_Core/ChangeLog (226350 => 226351) --- trunk/Source/_javascript_Core/ChangeLog 2018-01-03 03:44:01 UTC (rev 226350) +++ trunk/Source/_javascript_Core/ChangeLog 2018-01-03 03:59:16 UTC (rev 226351) @@ -1,3 +1,25 @@ +2018-01-02 Saam Barati + +Incorrect assertion inside AccessCase +https://bugs.webkit.org/show_bug.cgi?id=181200 + + +Reviewed by Yusuke Suzuki. + +Consider a PutById compiled to a setter in a function like so: + +``` +function foo(o) { o.f = o; } +``` + +The DFG will often assign the same registers to the baseGPR (o in o.f) and the +valueRegsPayloadGPR (o in the RHS). The code totally works when these are assigned +to the same register. However, we're asserting that they're not the same register. +This patch just removes this invalid assertion. + +* bytecode/AccessCase.cpp: +(JSC::AccessCase::generateImpl): + 2018-01-02 Caio Lima [ESNext][BigInt] Implement BigIntConstructor and BigIntPrototype Modified: trunk/Source/_javascript_Core/bytecode/AccessCase.cpp (226350 => 226351) --- trunk/Source/_javascript_Core/bytecode/AccessCase.cpp 2018-01-03 03:44:01 UTC (rev 226350) +++ trunk/Source/_javascript_Core/bytecode/AccessCase.cpp 2018-01-03 03:59:16 UTC (rev 226351) @@ -692,7 +692,7 @@ if (m_type == Getter || m_type == Setter) { auto& access = this->as(); ASSERT(baseGPR != loadedValueGPR); -ASSERT(m_type != Setter || (baseGPR != valueRegsPayloadGPR && loadedValueGPR != valueRegsPayloadGPR)); +ASSERT(m_type != Setter || valueRegsPayloadGPR != loadedValueGPR); // Create a JS call using a JS call inline cache. Assume that: // ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [226350] trunk/Source/WebCore
Title: [226350] trunk/Source/WebCore Revision 226350 Author utatane@gmail.com Date 2018-01-02 19:44:01 -0800 (Tue, 02 Jan 2018) Log Message Unreviewed, fix GCC warning by using #include https://bugs.webkit.org/show_bug.cgi?id=181189 This file is included in C++ files. Use #include instead of #import to suppress warning in GCC. * platform/PromisedBlobInfo.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/PromisedBlobInfo.h Diff Modified: trunk/Source/WebCore/ChangeLog (226349 => 226350) --- trunk/Source/WebCore/ChangeLog 2018-01-03 03:39:57 UTC (rev 226349) +++ trunk/Source/WebCore/ChangeLog 2018-01-03 03:44:01 UTC (rev 226350) @@ -1,3 +1,12 @@ +2018-01-02 Yusuke Suzuki + +Unreviewed, fix GCC warning by using #include +https://bugs.webkit.org/show_bug.cgi?id=181189 + +This file is included in C++ files. Use #include instead of #import to suppress warning in GCC. + +* platform/PromisedBlobInfo.h: + 2017-12-28 Yusuke Suzuki Remove std::chrono completely Modified: trunk/Source/WebCore/platform/PromisedBlobInfo.h (226349 => 226350) --- trunk/Source/WebCore/platform/PromisedBlobInfo.h 2018-01-03 03:39:57 UTC (rev 226349) +++ trunk/Source/WebCore/platform/PromisedBlobInfo.h 2018-01-03 03:44:01 UTC (rev 226350) @@ -25,7 +25,7 @@ #pragma once -#import +#include namespace WebCore { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [226347] trunk/Source/WebInspectorUI
Title: [226347] trunk/Source/WebInspectorUI Revision 226347 Author commit-qu...@webkit.org Date 2018-01-02 18:52:04 -0800 (Tue, 02 Jan 2018) Log Message Web Inspector: Clicking source location link in Console unexpectedly jumps to Network tab https://bugs.webkit.org/show_bug.cgi?id=181229 Patch by Joseph Pecoraro on 2018-01-02 Reviewed by Matt Baker. * UserInterface/Base/Main.js: Cleanup linkifyURLAsNode. Ignore Search tab in generic handlePossibleLinkClick when not already in the Search tab. * UserInterface/Views/CallFrameView.js: (WI.CallFrameView): Ignore Search and Network tab in CallFrame links. * UserInterface/Views/TabBrowser.js: (WI.TabBrowser.prototype.bestTabContentViewForRepresentedObject): Improve style. Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Base/Main.js trunk/Source/WebInspectorUI/UserInterface/Views/CallFrameView.js trunk/Source/WebInspectorUI/UserInterface/Views/TabBrowser.js Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (226346 => 226347) --- trunk/Source/WebInspectorUI/ChangeLog 2018-01-03 02:34:18 UTC (rev 226346) +++ trunk/Source/WebInspectorUI/ChangeLog 2018-01-03 02:52:04 UTC (rev 226347) @@ -1 +1,21 @@ +2018-01-02 Joseph Pecoraro + +Web Inspector: Clicking source location link in Console unexpectedly jumps to Network tab +https://bugs.webkit.org/show_bug.cgi?id=181229 + + +Reviewed by Matt Baker. + +* UserInterface/Base/Main.js: +Cleanup linkifyURLAsNode. Ignore Search tab in generic handlePossibleLinkClick +when not already in the Search tab. + +* UserInterface/Views/CallFrameView.js: +(WI.CallFrameView): +Ignore Search and Network tab in CallFrame links. + +* UserInterface/Views/TabBrowser.js: +(WI.TabBrowser.prototype.bestTabContentViewForRepresentedObject): +Improve style. + == Rolled over to ChangeLog-2018-01-01 == Modified: trunk/Source/WebInspectorUI/UserInterface/Base/Main.js (226346 => 226347) --- trunk/Source/WebInspectorUI/UserInterface/Base/Main.js 2018-01-03 02:34:18 UTC (rev 226346) +++ trunk/Source/WebInspectorUI/UserInterface/Base/Main.js 2018-01-03 02:52:04 UTC (rev 226347) @@ -775,7 +775,7 @@ WI.handlePossibleLinkClick = function(event, frame, options = {}) { -var anchorElement = event.target.enclosingNodeOrSelfWithNodeName("a"); +let anchorElement = event.target.enclosingNodeOrSelfWithNodeName("a"); if (!anchorElement || !anchorElement.href) return false; @@ -788,7 +788,10 @@ event.preventDefault(); event.stopPropagation(); -this.openURL(anchorElement.href, frame, Object.shallowMerge(options, {lineNumber: anchorElement.lineNumber})); +this.openURL(anchorElement.href, frame, Object.shallowMerge(options, { +lineNumber: anchorElement.lineNumber, +ignoreSearchTab: !WI.isShowingSearchTab(), +})); return true; }; @@ -981,6 +984,11 @@ return this.tabBrowser.selectedTabContentView instanceof WI.NetworkTabContentView; }; +WI.isShowingSearchTab = function() +{ +return this.tabBrowser.selectedTabContentView instanceof WI.SearchTabContentView; +}; + WI.showTimelineTab = function() { var tabContentView = this.tabBrowser.bestTabContentViewForClass(WI.TimelineTabContentView); @@ -2359,20 +2367,13 @@ return sourceCode || null; }; -WI.linkifyURLAsNode = function(url, linkText, classes) +WI.linkifyURLAsNode = function(url, linkText, className) { -if (!linkText) -linkText = url; - -classes = classes ? classes + " " : ""; - -var a = document.createElement("a"); +let a = document.createElement("a"); a.href = "" -a.className = classes; - -a.textContent = linkText; +a.className = className || ""; +a.textContent = linkText || url; a.style.maxWidth = "100%"; - return a; }; Modified: trunk/Source/WebInspectorUI/UserInterface/Views/CallFrameView.js (226346 => 226347) --- trunk/Source/WebInspectorUI/UserInterface/Views/CallFrameView.js 2018-01-03 02:34:18 UTC (rev 226346) +++ trunk/Source/WebInspectorUI/UserInterface/Views/CallFrameView.js 2018-01-03 02:52:04 UTC (rev 226347) @@ -37,7 +37,10 @@ var sourceCodeLocation = callFrame.sourceCodeLocation; if (sourceCodeLocation) { -WI.linkifyElement(callFrameElement, sourceCodeLocation); +WI.linkifyElement(callFrameElement, sourceCodeLocation, { +ignoreNetworkTab: true, +ignoreSearchTab: true, +}); var linkElement = document.createElement("a"); linkElement.classList.add("source-link"); Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TabBrowser.js (226346 => 226347) --- trunk/Source/WebInspectorUI/UserInterface/Views/TabBrowser.js 2018-01-03 02:34:18 UTC (rev 226346) +++ trunk/Source/WebInspectorUI/UserInterface/Views/TabBrowser.js 2018-01-03 02:52:04 UTC (rev 226347)
[webkit-changes] [226346] trunk
Title: [226346] trunk Revision 226346 Author mcatanz...@igalia.com Date 2018-01-02 18:34:18 -0800 (Tue, 02 Jan 2018) Log Message REGRESSION(r223253): Broke ResourceLoadStatistics layout tests for non-Cocoa ports https://bugs.webkit.org/show_bug.cgi?id=181231 Reviewed by Alex Christensen. Source/WebKit: Add new C API for use by WebKitTestRunner. * UIProcess/API/C/WKWebsiteDataStoreRef.cpp: (WKWebsiteDataStoreIsStatisticsRegisteredAsSubFrameUnder): (WKWebsiteDataStoreIsStatisticsRegisteredAsRedirectingTo): * UIProcess/API/C/WKWebsiteDataStoreRef.h: Tools: Implement TestController APIs needed by ResourceLoadStatistics tests. * WebKitTestRunner/TestController.cpp: (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder): (WTR::TestController::isStatisticsRegisteredAsRedirectingTo): LayoutTests: Unskip the tests. * platform/gtk/TestExpectations: * platform/wpe/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations trunk/LayoutTests/platform/wpe/TestExpectations trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/TestController.cpp Diff Modified: trunk/LayoutTests/ChangeLog (226345 => 226346) --- trunk/LayoutTests/ChangeLog 2018-01-03 01:43:37 UTC (rev 226345) +++ trunk/LayoutTests/ChangeLog 2018-01-03 02:34:18 UTC (rev 226346) @@ -1,5 +1,17 @@ 2018-01-02 Michael Catanzaro +REGRESSION(r223253): Broke ResourceLoadStatistics layout tests for non-Cocoa ports +https://bugs.webkit.org/show_bug.cgi?id=181231 + +Reviewed by Alex Christensen. + +Unskip the tests. + +* platform/gtk/TestExpectations: +* platform/wpe/TestExpectations: + +2018-01-02 Michael Catanzaro + Unreviewed WPE test gardening. * platform/wpe/TestExpectations: Modified: trunk/LayoutTests/platform/gtk/TestExpectations (226345 => 226346) --- trunk/LayoutTests/platform/gtk/TestExpectations 2018-01-03 01:43:37 UTC (rev 226345) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2018-01-03 02:34:18 UTC (rev 226346) @@ -2286,9 +2286,6 @@ # This is a Mac specific feature webkit.org/b/168466 http/tests/security/bypassing-cors-checks-for-extension-urls.html [ Skip ] -# Currently only has Objective-C API -http/tests/resourceLoadStatistics [ Skip ] - # # End of tests with architecture-specific results # @@ -3337,6 +3334,8 @@ webkit.org/b/180805 inspector/canvas/requestContent-bitmaprenderer.html [ Failure ] +webkit.org/b/175189 http/tests/resourceLoadStatistics/grandfathering.html [ Failure ] + # # End of non-crashing, non-flaky tests failing # Modified: trunk/LayoutTests/platform/wpe/TestExpectations (226345 => 226346) --- trunk/LayoutTests/platform/wpe/TestExpectations 2018-01-03 01:43:37 UTC (rev 226345) +++ trunk/LayoutTests/platform/wpe/TestExpectations 2018-01-03 02:34:18 UTC (rev 226346) @@ -1044,7 +1044,6 @@ http/tests/preconnect [ Skip ] http/tests/preload [ Skip ] http/tests/quicklook [ Skip ] -http/tests/resourceLoadStatistics [ Skip ] http/tests/security [ Skip ] http/tests/ssl [ Skip ] http/tests/svg [ Skip ] @@ -1158,3 +1157,5 @@ webkit.org/b/181224 imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-after-update.html [ Crash ] webkit.org/b/181224 imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-multiple-times-with-the-same-mediakeys.html [ Crash ] webkit.org/b/181225 media/encrypted-media/mock-MediaKeySystemAccess.html [ Crash ] + +webkit.org/b/175189 http/tests/resourceLoadStatistics/grandfathering.html [ Failure ] Modified: trunk/Source/WebKit/ChangeLog (226345 => 226346) --- trunk/Source/WebKit/ChangeLog 2018-01-03 01:43:37 UTC (rev 226345) +++ trunk/Source/WebKit/ChangeLog 2018-01-03 02:34:18 UTC (rev 226346) @@ -1,3 +1,17 @@ +2018-01-02 Michael Catanzaro + +REGRESSION(r223253): Broke ResourceLoadStatistics layout tests for non-Cocoa ports +https://bugs.webkit.org/show_bug.cgi?id=181231 + +Reviewed by Alex Christensen. + +Add new C API for use by WebKitTestRunner. + +* UIProcess/API/C/WKWebsiteDataStoreRef.cpp: +(WKWebsiteDataStoreIsStatisticsRegisteredAsSubFrameUnder): +(WKWebsiteDataStoreIsStatisticsRegisteredAsRedirectingTo): +* UIProcess/API/C/WKWebsiteDataStoreRef.h: + 2018-01-02 Jiewen Tan Add a WebAuthentication runtime feature flag Modified: trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp (
[webkit-changes] [226345] trunk/Source/WTF
Title: [226345] trunk/Source/WTF Revision 226345 Author mark@apple.com Date 2018-01-02 17:43:37 -0800 (Tue, 02 Jan 2018) Log Message Refactoring: Rename DummyClass to DummyStruct because it's a struct. https://bugs.webkit.org/show_bug.cgi?id=181230 Reviewed by JF Bastien. * wtf/WTFAssertions.cpp: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/WTFAssertions.cpp Diff Modified: trunk/Source/WTF/ChangeLog (226344 => 226345) --- trunk/Source/WTF/ChangeLog 2018-01-03 00:56:55 UTC (rev 226344) +++ trunk/Source/WTF/ChangeLog 2018-01-03 01:43:37 UTC (rev 226345) @@ -1,5 +1,14 @@ 2018-01-02 Mark Lam +Refactoring: Rename DummyClass to DummyStruct because it's a struct. +https://bugs.webkit.org/show_bug.cgi?id=181230 + +Reviewed by JF Bastien. + +* wtf/WTFAssertions.cpp: + +2018-01-02 Mark Lam + Ensure that poisoned pointers do not look like double or int32 JSValues. https://bugs.webkit.org/show_bug.cgi?id=181221 Modified: trunk/Source/WTF/wtf/WTFAssertions.cpp (226344 => 226345) --- trunk/Source/WTF/wtf/WTFAssertions.cpp 2018-01-03 00:56:55 UTC (rev 226344) +++ trunk/Source/WTF/wtf/WTFAssertions.cpp 2018-01-03 01:43:37 UTC (rev 226345) @@ -32,7 +32,7 @@ namespace WTF { namespace { -struct DummyClass { }; +struct DummyStruct { }; } #if ENABLE(POISON) @@ -65,15 +65,15 @@ static_assert(!(makeConstExprPoison(0x) & 0x3), "ensure bottom 2 alignment bits are available for use as flag bits."); #endif // ENABLE(POISON) -static_assert(sizeof(Ref) == sizeof(DummyClass*), ""); -static_assert(sizeof(PoisonedRef<0x, DummyClass>) == sizeof(DummyClass*), ""); +static_assert(sizeof(Ref) == sizeof(DummyStruct*), ""); +static_assert(sizeof(PoisonedRef<0x, DummyStruct>) == sizeof(DummyStruct*), ""); -static_assert(sizeof(RefPtr) == sizeof(DummyClass*), ""); -static_assert(sizeof(PoisonedRefPtr<0x, DummyClass>) == sizeof(DummyClass*), ""); +static_assert(sizeof(RefPtr) == sizeof(DummyStruct*), ""); +static_assert(sizeof(PoisonedRefPtr<0x, DummyStruct>) == sizeof(DummyStruct*), ""); -static_assert(sizeof(PoisonedUniquePtr<0x, DummyClass>) == sizeof(DummyClass*), ""); +static_assert(sizeof(PoisonedUniquePtr<0x, DummyStruct>) == sizeof(DummyStruct*), ""); static_assert(sizeof(PoisonedUniquePtr<0x, int[]>) == sizeof(int*), ""); -static_assert(sizeof(PoisonedUniquePtr<0x, DummyClass[]>) == sizeof(DummyClass*), ""); +static_assert(sizeof(PoisonedUniquePtr<0x, DummyStruct[]>) == sizeof(DummyStruct*), ""); } // namespace WTF ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [226343] trunk/Source/WebCore
Title: [226343] trunk/Source/WebCore Revision 226343 Author beid...@apple.com Date 2018-01-02 16:51:01 -0800 (Tue, 02 Jan 2018) Log Message Make MessagePortChannel::takeAllMessagesFromRemote asynchronous. https://bugs.webkit.org/show_bug.cgi?id=181205 Reviewed by Alex Christensen. No new tests (No behavior change) This is needed for the ongoing WK2 MessagePort work. For WK1 in-process MessagePorts it is still synchronous; no behavior change. * dom/InProcessMessagePortChannel.cpp: (WebCore::InProcessMessagePortChannel::takeAllMessagesFromRemote): * dom/InProcessMessagePortChannel.h: * dom/MessagePort.cpp: (WebCore::MessagePort::dispatchMessages): * dom/MessagePortChannel.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/InProcessMessagePortChannel.cpp trunk/Source/WebCore/dom/InProcessMessagePortChannel.h trunk/Source/WebCore/dom/MessagePort.cpp trunk/Source/WebCore/dom/MessagePortChannel.h Diff Modified: trunk/Source/WebCore/ChangeLog (226342 => 226343) --- trunk/Source/WebCore/ChangeLog 2018-01-03 00:20:48 UTC (rev 226342) +++ trunk/Source/WebCore/ChangeLog 2018-01-03 00:51:01 UTC (rev 226343) @@ -1,3 +1,24 @@ +2018-01-02 Brady Eidson + +Make MessagePortChannel::takeAllMessagesFromRemote asynchronous. +https://bugs.webkit.org/show_bug.cgi?id=181205 + +Reviewed by Alex Christensen. + +No new tests (No behavior change) + +This is needed for the ongoing WK2 MessagePort work. + +For WK1 in-process MessagePorts it is still synchronous; no behavior change. + +* dom/InProcessMessagePortChannel.cpp: +(WebCore::InProcessMessagePortChannel::takeAllMessagesFromRemote): +* dom/InProcessMessagePortChannel.h: + +* dom/MessagePort.cpp: +(WebCore::MessagePort::dispatchMessages): +* dom/MessagePortChannel.h: + 2018-01-02 Jiewen Tan Add a WebAuthentication runtime feature flag Modified: trunk/Source/WebCore/dom/InProcessMessagePortChannel.cpp (226342 => 226343) --- trunk/Source/WebCore/dom/InProcessMessagePortChannel.cpp 2018-01-03 00:20:48 UTC (rev 226342) +++ trunk/Source/WebCore/dom/InProcessMessagePortChannel.cpp 2018-01-03 00:51:01 UTC (rev 226343) @@ -27,6 +27,7 @@ #include "InProcessMessagePortChannel.h" #include "MessagePort.h" +#include #include namespace WebCore { @@ -75,10 +76,15 @@ m_remotePort->messageAvailable(); } -Deque> InProcessMessagePortChannel::takeAllMessagesFromRemote() +void InProcessMessagePortChannel::takeAllMessagesFromRemote(CompletionHandler>&&)>&& callback) { -Locker locker(m_lock); -return m_incomingQueue->takeAllMessages(); +Deque> messages; +{ +Locker locker(m_lock); +messages = m_incomingQueue->takeAllMessages(); +} + +callback(WTFMove(messages)); } bool InProcessMessagePortChannel::isConnectedTo(const MessagePortIdentifier& identifier) Modified: trunk/Source/WebCore/dom/InProcessMessagePortChannel.h (226342 => 226343) --- trunk/Source/WebCore/dom/InProcessMessagePortChannel.h 2018-01-03 00:20:48 UTC (rev 226342) +++ trunk/Source/WebCore/dom/InProcessMessagePortChannel.h 2018-01-03 00:51:01 UTC (rev 226343) @@ -37,7 +37,7 @@ ~InProcessMessagePortChannel() final; void postMessageToRemote(Ref&&, std::unique_ptr&&) final; -Deque> takeAllMessagesFromRemote() final; +void takeAllMessagesFromRemote(CompletionHandler>&&)>&&) final; bool isConnectedTo(const MessagePortIdentifier&) final; bool entangleWithRemoteIfOpen(const MessagePortIdentifier&) final; void disentangle() final; Modified: trunk/Source/WebCore/dom/MessagePort.cpp (226342 => 226343) --- trunk/Source/WebCore/dom/MessagePort.cpp 2018-01-03 00:20:48 UTC (rev 226342) +++ trunk/Source/WebCore/dom/MessagePort.cpp 2018-01-03 00:51:01 UTC (rev 226343) @@ -203,17 +203,19 @@ if (!m_entangledChannel) return; -bool contextIsWorker = is(*m_scriptExecutionContext); - -auto pendingMessages = m_entangledChannel->takeAllMessagesFromRemote(); -for (auto& message : pendingMessages) { -// close() in Worker onmessage handler should prevent next message from dispatching. -if (contextIsWorker && downcast(*m_scriptExecutionContext).isClosing()) +m_entangledChannel->takeAllMessagesFromRemote([this, protectedThis = makeRef(*this)](Deque>&& messages) { +if (!m_scriptExecutionContext) return; -auto ports = MessagePort::entanglePorts(*m_scriptExecutionContext, WTFMove(message->channels)); -dispatchEvent(MessageEvent::create(WTFMove(ports), WTFMove(message->message))); -} +bool contextIsWorker = is(*m_scriptExecutionContext); +for (auto& message : messages) { +// close() in Worker onmessage handler should prevent next message from dispatching. +if (contextIsWorker && downcast(*m_scriptExecutionContext).isClosing()) +return; +auto ports =
[webkit-changes] [226340] trunk
Title: [226340] trunk Revision 226340 Author wenson_hs...@apple.com Date 2018-01-02 16:06:41 -0800 (Tue, 02 Jan 2018) Log Message [Attachment Support] Don't Blob-convert images and attachments with https:, http: or data: urls https://bugs.webkit.org/show_bug.cgi?id=181143 Reviewed by Tim Horton. Source/WebCore: Clients such as Mail would expect pasting or dropping an image with src="" to result in the source URL being preserved (i.e. staying as remote images) instead of creating image attachments out of them. This patch hooks into the shouldConvertToBlob() check added in r226272 so that it applies to attachment element replacement as well. Test: WKAttachmentTests.DoNotInsertDataURLImagesAsAttachments * editing/cocoa/WebContentReaderCocoa.mm: (WebCore::shouldConvertToBlob): (WebCore::replaceRichContentWithAttachments): Tools: Add a new API test to ensure that a copied image with a data URL does not get pasted as an attachment when attachment elements are enabled. * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm: (TestWebKitAPI::TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm Added Paths trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/apple-data-url.html Diff Modified: trunk/Source/WebCore/ChangeLog (226339 => 226340) --- trunk/Source/WebCore/ChangeLog 2018-01-02 23:39:40 UTC (rev 226339) +++ trunk/Source/WebCore/ChangeLog 2018-01-03 00:06:41 UTC (rev 226340) @@ -1,3 +1,22 @@ +2018-01-02 Wenson Hsieh + +[Attachment Support] Don't Blob-convert images and attachments with https:, http: or data: urls +https://bugs.webkit.org/show_bug.cgi?id=181143 + + +Reviewed by Tim Horton. + +Clients such as Mail would expect pasting or dropping an image with src="" to result in the source +URL being preserved (i.e. staying as remote images) instead of creating image attachments out of them. This +patch hooks into the shouldConvertToBlob() check added in r226272 so that it applies to attachment element +replacement as well. + +Test: WKAttachmentTests.DoNotInsertDataURLImagesAsAttachments + +* editing/cocoa/WebContentReaderCocoa.mm: +(WebCore::shouldConvertToBlob): +(WebCore::replaceRichContentWithAttachments): + 2018-01-02 Brady Eidson Identify MessagePorts by a globally unique MessagePortIdentifier. Modified: trunk/Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm (226339 => 226340) --- trunk/Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm 2018-01-02 23:39:40 UTC (rev 226339) +++ trunk/Source/WebCore/editing/cocoa/WebContentReaderCocoa.mm 2018-01-03 00:06:41 UTC (rev 226340) @@ -175,6 +175,12 @@ bool m_didDisableImage { false }; }; + +static bool shouldConvertToBlob(const URL& url) +{ +return !(url.protocolIsInHTTPFamily() || url.protocolIsData()); +} + static bool shouldReplaceRichContentWithAttachments() { #if ENABLE(ATTACHMENT_ELEMENT) @@ -217,8 +223,11 @@ // FIXME: Handle resources in subframe archives. HashMap> urlToBlobMap; -for (const Ref& subresource : subresources) -urlToBlobMap.set(subresource->url().string(), Blob::create(subresource->data(), subresource->mimeType())); +for (const Ref& subresource : subresources) { +auto& url = "" +if (shouldConvertToBlob(url)) +urlToBlobMap.set(url.string(), Blob::create(subresource->data(), subresource->mimeType())); +} Vector> elementsToRemove; Vector attachmentReplacementInfo; @@ -353,11 +362,6 @@ return createMarkup(range.get(), nullptr, AnnotateForInterchange, false, ResolveNonLocalURLs); } -static bool shouldConvertToBlob(const URL& url) -{ -return !(url.protocolIsInHTTPFamily() || url.protocolIsData()); -} - static String sanitizeMarkupWithArchive(Document& destinationDocument, MarkupAndArchive& markupAndArchive, const std::function& canShowMIMETypeAsHTML) { auto page = createPageForSanitizingWebContent(); Modified: trunk/Tools/ChangeLog (226339 => 226340) --- trunk/Tools/ChangeLog 2018-01-02 23:39:40 UTC (rev 226339) +++ trunk/Tools/ChangeLog 2018-01-03 00:06:41 UTC (rev 226340) @@ -1,3 +1,18 @@ +2018-01-02 Wenson Hsieh + +[Attachment Support] Don't Blob-convert images and attachments with https:, http: or data: urls +https://bugs.webkit.org/show_bug.cgi?id=181143 + + +Reviewed by Tim Horton. + +Add a new API test to ensure that a copied image with a data URL does not get pasted as an attachment when +attachment elements are enabled. + +* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: +* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm: +(TestWebKitAPI:
[webkit-changes] [226337] trunk/Source/WebKit
Title: [226337] trunk/Source/WebKit Revision 226337 Author mcatanz...@igalia.com Date 2018-01-02 14:45:39 -0800 (Tue, 02 Jan 2018) Log Message REGRESSION(r226327): [GTK] Plugin process is broken https://bugs.webkit.org/show_bug.cgi?id=181187 Unreviewed, fix PluginProcessMainUnix after r226327. * PluginProcess/unix/PluginProcessMainUnix.cpp: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/PluginProcess/unix/PluginProcessMainUnix.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (226336 => 226337) --- trunk/Source/WebKit/ChangeLog 2018-01-02 22:42:16 UTC (rev 226336) +++ trunk/Source/WebKit/ChangeLog 2018-01-02 22:45:39 UTC (rev 226337) @@ -1,3 +1,12 @@ +2018-01-02 Michael Catanzaro + +REGRESSION(r226327): [GTK] Plugin process is broken +https://bugs.webkit.org/show_bug.cgi?id=181187 + +Unreviewed, fix PluginProcessMainUnix after r226327. + +* PluginProcess/unix/PluginProcessMainUnix.cpp: + 2018-01-02 Tim Horton Fix the build on platforms where UICurrentUserInterfaceIdiomIsPad is defined to false Modified: trunk/Source/WebKit/PluginProcess/unix/PluginProcessMainUnix.cpp (226336 => 226337) --- trunk/Source/WebKit/PluginProcess/unix/PluginProcessMainUnix.cpp 2018-01-02 22:42:16 UTC (rev 226336) +++ trunk/Source/WebKit/PluginProcess/unix/PluginProcessMainUnix.cpp 2018-01-02 22:45:39 UTC (rev 226337) @@ -65,13 +65,13 @@ bool parseCommandLine(int argc, char** argv) override { -ASSERT(argc == 3); -if (argc != 3) +ASSERT(argc == 4); +if (argc != 4) return false; -if (!strcmp(argv[1], "-scanPlugin")) +if (!strcmp(argv[2], "-scanPlugin")) #if PLUGIN_ARCHITECTURE(UNIX) -exit(NetscapePluginModule::scanPlugin(argv[2]) ? EXIT_SUCCESS : EXIT_FAILURE); +exit(NetscapePluginModule::scanPlugin(argv[3]) ? EXIT_SUCCESS : EXIT_FAILURE); #else exit(EXIT_FAILURE); #endif @@ -83,7 +83,7 @@ } #endif -m_parameters.extraInitializationData.add("plugin-path", argv[2]); +m_parameters.extraInitializationData.add("plugin-path", argv[3]); return ChildProcessMainBase::parseCommandLine(argc, argv); } }; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [226336] trunk/Source/WebCore
Title: [226336] trunk/Source/WebCore Revision 226336 Author beid...@apple.com Date 2018-01-02 14:42:16 -0800 (Tue, 02 Jan 2018) Log Message Identify MessagePorts by a globally unique MessagePortIdentifier. https://bugs.webkit.org/show_bug.cgi?id=181172 Reviewed by Alex Christensen. No new tests (Behavior change covered by all existing tests). This cleans up the abstract MessagePortChannel interface to be in terms of identifiers instead of actual MessagePort objects. The identifiers are compounded with the current ProcessIdentifier meaning they are global across all processes for the running UI process, enabling easy cross-process communication. (Actual cross-process communication comes in a followup) * WebCore.xcodeproj/project.pbxproj: * dom/InProcessMessagePortChannel.cpp: (WebCore::InProcessMessagePortChannel::createChannelBetweenPorts): (WebCore::InProcessMessagePortChannel::isConnectedTo): (WebCore::InProcessMessagePortChannel::entangleWithRemoteIfOpen): (WebCore::InProcessMessagePortChannel::entangleIfOpen): Deleted. * dom/InProcessMessagePortChannel.h: * dom/MessageChannel.cpp: (WebCore::MessageChannel::MessageChannel): (WebCore::m_port2): * dom/MessagePort.cpp: (WebCore::allMessagePortsLock): (WebCore::MessagePort::ref const): (WebCore::MessagePort::deref const): (WebCore::MessagePort::existingMessagePortForIdentifier): (WebCore::MessagePort::MessagePort): (WebCore::MessagePort::~MessagePort): (WebCore::MessagePort::postMessage): (WebCore::MessagePort::entangleWithRemote): (WebCore::MessagePort::entanglePorts): (WebCore::MessagePort::entangle): Deleted. * dom/MessagePort.h: * dom/MessagePortChannel.h: * dom/MessagePortIdentifier.h: Added. (WebCore::operator==): (WebCore::MessagePortIdentifier::encode const): (WebCore::MessagePortIdentifier::decode): (WebCore::MessagePortIdentifier::hash const): (WTF::MessagePortIdentifierHash::hash): (WTF::MessagePortIdentifierHash::equal): (WTF::HashTraits::emptyValue): (WTF::HashTraits::constructDeletedValue): (WTF::HashTraits::isDeletedValue): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/dom/InProcessMessagePortChannel.cpp trunk/Source/WebCore/dom/InProcessMessagePortChannel.h trunk/Source/WebCore/dom/MessageChannel.cpp trunk/Source/WebCore/dom/MessagePort.cpp trunk/Source/WebCore/dom/MessagePort.h trunk/Source/WebCore/dom/MessagePortChannel.h Added Paths trunk/Source/WebCore/dom/MessagePortIdentifier.h Diff Modified: trunk/Source/WebCore/ChangeLog (226335 => 226336) --- trunk/Source/WebCore/ChangeLog 2018-01-02 21:06:46 UTC (rev 226335) +++ trunk/Source/WebCore/ChangeLog 2018-01-02 22:42:16 UTC (rev 226336) @@ -1,3 +1,59 @@ +2018-01-02 Brady Eidson + +Identify MessagePorts by a globally unique MessagePortIdentifier. +https://bugs.webkit.org/show_bug.cgi?id=181172 + +Reviewed by Alex Christensen. + +No new tests (Behavior change covered by all existing tests). + +This cleans up the abstract MessagePortChannel interface to be in terms of identifiers +instead of actual MessagePort objects. + +The identifiers are compounded with the current ProcessIdentifier meaning they are global +across all processes for the running UI process, enabling easy cross-process communication. + +(Actual cross-process communication comes in a followup) + +* WebCore.xcodeproj/project.pbxproj: + +* dom/InProcessMessagePortChannel.cpp: +(WebCore::InProcessMessagePortChannel::createChannelBetweenPorts): +(WebCore::InProcessMessagePortChannel::isConnectedTo): +(WebCore::InProcessMessagePortChannel::entangleWithRemoteIfOpen): +(WebCore::InProcessMessagePortChannel::entangleIfOpen): Deleted. +* dom/InProcessMessagePortChannel.h: + +* dom/MessageChannel.cpp: +(WebCore::MessageChannel::MessageChannel): +(WebCore::m_port2): + +* dom/MessagePort.cpp: +(WebCore::allMessagePortsLock): +(WebCore::MessagePort::ref const): +(WebCore::MessagePort::deref const): +(WebCore::MessagePort::existingMessagePortForIdentifier): +(WebCore::MessagePort::MessagePort): +(WebCore::MessagePort::~MessagePort): +(WebCore::MessagePort::postMessage): +(WebCore::MessagePort::entangleWithRemote): +(WebCore::MessagePort::entanglePorts): +(WebCore::MessagePort::entangle): Deleted. +* dom/MessagePort.h: + +* dom/MessagePortChannel.h: + +* dom/MessagePortIdentifier.h: Added. +(WebCore::operator==): +(WebCore::MessagePortIdentifier::encode const): +(WebCore::MessagePortIdentifier::decode): +(WebCore::MessagePortIdentifier::hash const): +(WTF::MessagePortIdentifierHash::hash): +(WTF::MessagePortIdentifierHash::equal): +(WTF::HashTraits::empty
[webkit-changes] [226335] trunk/Source/WebKit
Title: [226335] trunk/Source/WebKit Revision 226335 Author timothy_hor...@apple.com Date 2018-01-02 13:06:46 -0800 (Tue, 02 Jan 2018) Log Message Fix the build on platforms where UICurrentUserInterfaceIdiomIsPad is defined to false https://bugs.webkit.org/show_bug.cgi?id=181218 Reviewed by Alex Christensen. * Platform/spi/ios/UIKitSPI.h: (currentUserInterfaceIdiomIsPad): * UIProcess/ios/SmartMagnificationController.mm: (WebKit::SmartMagnificationController::didCollectGeometryForSmartMagnificationGesture): * UIProcess/ios/WKContentViewInteraction.mm: (-[WKFormInputSession setAccessoryViewCustomButtonTitle:]): (-[WKContentView _requiresKeyboardWhenFirstResponder]): (-[WKContentView _displayFormNodeInputView]): (-[WKContentView requiresAccessoryView]): (-[WKContentView _updateAccessory]): * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: (-[WKAirPlayRoutePicker show:fromRect:]): * UIProcess/ios/forms/WKFileUploadPanel.mm: (-[WKFileUploadPanel _showPhotoPickerWithSourceType:]): (-[WKFileUploadPanel _presentMenuOptionForCurrentInterfaceIdiom:]): * UIProcess/ios/forms/WKFormInputControl.mm: (-[WKDateTimePicker initWithView:datePickerMode:]): (-[WKFormInputControl initWithView:]): * UIProcess/ios/forms/WKFormSelectControl.mm: (-[WKFormSelectControl initWithView:]): On platforms where UICurrentUserInterfaceIdiomIsPad is defined to false, blocks that conditionally execute based on its value are unreachable. This causes the compiler to complain. Hide it away inside an inline function and make use of that everywhere we used to use the macro. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h trunk/Source/WebKit/UIProcess/ios/SmartMagnificationController.mm trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm trunk/Source/WebKit/UIProcess/ios/forms/WKAirPlayRoutePicker.mm trunk/Source/WebKit/UIProcess/ios/forms/WKFileUploadPanel.mm trunk/Source/WebKit/UIProcess/ios/forms/WKFormInputControl.mm trunk/Source/WebKit/UIProcess/ios/forms/WKFormSelectControl.mm Diff Modified: trunk/Source/WebKit/ChangeLog (226334 => 226335) --- trunk/Source/WebKit/ChangeLog 2018-01-02 20:50:30 UTC (rev 226334) +++ trunk/Source/WebKit/ChangeLog 2018-01-02 21:06:46 UTC (rev 226335) @@ -1,3 +1,35 @@ +2018-01-02 Tim Horton + +Fix the build on platforms where UICurrentUserInterfaceIdiomIsPad is defined to false +https://bugs.webkit.org/show_bug.cgi?id=181218 + +Reviewed by Alex Christensen. + +* Platform/spi/ios/UIKitSPI.h: +(currentUserInterfaceIdiomIsPad): +* UIProcess/ios/SmartMagnificationController.mm: +(WebKit::SmartMagnificationController::didCollectGeometryForSmartMagnificationGesture): +* UIProcess/ios/WKContentViewInteraction.mm: +(-[WKFormInputSession setAccessoryViewCustomButtonTitle:]): +(-[WKContentView _requiresKeyboardWhenFirstResponder]): +(-[WKContentView _displayFormNodeInputView]): +(-[WKContentView requiresAccessoryView]): +(-[WKContentView _updateAccessory]): +* UIProcess/ios/forms/WKAirPlayRoutePicker.mm: +(-[WKAirPlayRoutePicker show:fromRect:]): +* UIProcess/ios/forms/WKFileUploadPanel.mm: +(-[WKFileUploadPanel _showPhotoPickerWithSourceType:]): +(-[WKFileUploadPanel _presentMenuOptionForCurrentInterfaceIdiom:]): +* UIProcess/ios/forms/WKFormInputControl.mm: +(-[WKDateTimePicker initWithView:datePickerMode:]): +(-[WKFormInputControl initWithView:]): +* UIProcess/ios/forms/WKFormSelectControl.mm: +(-[WKFormSelectControl initWithView:]): +On platforms where UICurrentUserInterfaceIdiomIsPad is defined to false, +blocks that conditionally execute based on its value are unreachable. +This causes the compiler to complain. Hide it away inside an inline function +and make use of that everywhere we used to use the macro. + 2018-01-02 Alex Christensen Remove SVN file accidentally added in r226160 Modified: trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h (226334 => 226335) --- trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h 2018-01-02 20:50:30 UTC (rev 226334) +++ trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h 2018-01-02 21:06:46 UTC (rev 226335) @@ -168,8 +168,6 @@ @property (nonatomic, readonly, getter=_contentWidth) CGFloat contentWidth; @end -#define UICurrentUserInterfaceIdiomIsPad() ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) - @interface UIDevice () @property (nonatomic, readonly, retain) NSString *buildVersion; @end @@ -981,6 +979,18 @@ @end #endif +static inline bool currentUserInterfaceIdiomIsPad() +{ +// This inline function exists to thwart unreachable code +// detection on platforms where UICurrentUserInterfaceIdiomIsPad +// is defined directly to false. +#if USE(APPLE_INTERNAL_SDK) +return UICurrentUserInterfaceIdiomIsPad(); +#else +return [[UIDevice current
[webkit-changes] [226333] trunk
Title: [226333] trunk Revision 226333 Author commit-qu...@webkit.org Date 2018-01-02 12:38:04 -0800 (Tue, 02 Jan 2018) Log Message Memory cache should not reuse resources with different credential fetch option https://bugs.webkit.org/show_bug.cgi?id=181212 Patch by Youenn Fablet on 2018-01-02 Reviewed by Alex Christensen. LayoutTests/imported/w3c: * web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https-expected.txt: Source/WebCore: Covered by rebased test. * loader/cache/CachedResourceLoader.cpp: (WebCore::CachedResourceLoader::determineRevalidationPolicy const): LayoutTests: * TestExpectations: Removing test flakiness expectation. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/cache/CachedResourceLoader.cpp Diff Modified: trunk/LayoutTests/ChangeLog (226332 => 226333) --- trunk/LayoutTests/ChangeLog 2018-01-02 20:28:31 UTC (rev 226332) +++ trunk/LayoutTests/ChangeLog 2018-01-02 20:38:04 UTC (rev 226333) @@ -1,3 +1,12 @@ +2018-01-02 Youenn Fablet + +Memory cache should not reuse resources with different credential fetch option +https://bugs.webkit.org/show_bug.cgi?id=181212 + +Reviewed by Alex Christensen. + +* TestExpectations: Removing test flakiness expectation. + 2018-01-02 Jiewen Tan Update Credential Management API for WebAuthentication Modified: trunk/LayoutTests/TestExpectations (226332 => 226333) --- trunk/LayoutTests/TestExpectations 2018-01-02 20:28:31 UTC (rev 226332) +++ trunk/LayoutTests/TestExpectations 2018-01-02 20:38:04 UTC (rev 226333) @@ -177,9 +177,9 @@ imported/w3c/web-platform-tests/service-workers/service-worker/websocket.https.html [ Pass Failure ] imported/w3c/web-platform-tests/service-workers/service-worker/windowclient-navigate.https.html [ Pass Failure ] imported/w3c/web-platform-tests/streams/readable-byte-streams/detached-buffers.serviceworker.https.html [ Pass Failure ] -imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https.html [ DumpJSConsoleLogInStdErr Pass Failure ] imported/w3c/web-platform-tests/service-workers/service-worker/update.https.html [ Pass Failure ] +imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https.html [ DumpJSConsoleLogInStdErr ] imported/w3c/web-platform-tests/service-workers/service-worker/fetch-canvas-tainting.https.html [ DumpJSConsoleLogInStdErr ] imported/w3c/web-platform-tests/service-workers/service-worker/fetch-response-taint.https.html [ DumpJSConsoleLogInStdErr ] [ Debug ] imported/w3c/web-platform-tests/service-workers/service-worker/getregistrations.https.html [ Slow ] Modified: trunk/LayoutTests/imported/w3c/ChangeLog (226332 => 226333) --- trunk/LayoutTests/imported/w3c/ChangeLog 2018-01-02 20:28:31 UTC (rev 226332) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2018-01-02 20:38:04 UTC (rev 226333) @@ -1,3 +1,12 @@ +2018-01-02 Youenn Fablet + +Memory cache should not reuse resources with different credential fetch option +https://bugs.webkit.org/show_bug.cgi?id=181212 + +Reviewed by Alex Christensen. + +* web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https-expected.txt: + 2018-01-02 Jiewen Tan Update Credential Management API for WebAuthentication Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https-expected.txt (226332 => 226333) --- trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https-expected.txt 2018-01-02 20:28:31 UTC (rev 226332) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https-expected.txt 2018-01-02 20:38:04 UTC (rev 226333) @@ -1,4 +1,3 @@ - -FAIL Verify CORS XHR of fetch() in a Service Worker assert_equals: expected "finish" but got "failure:Result of url:https://localhost:9443/service-workers/service-worker/resources/fetch-access-control.py?mode=cors&url="" with_credentials: true must be FAIL but SUCCESS" +PASS Verify CORS XHR of fetch() in a Service Worker Modified: trunk/Source/WebCore/ChangeLog (226332 => 226333) --- trunk/Source/WebCore/ChangeLog 2018-01-02 20:28:31 UTC (rev 226332) +++ trunk/Source/WebCore/ChangeLog 2018-01-02 20:38:04 UTC (rev 226333) @@ -1,3 +1,15 @@ +2018-01-02 Youenn Fablet + +Memory cache should not reuse resources with different credential fetch option +https://bugs.webkit.org/show_bug.cgi?id=181212 + +Reviewed by Alex Christensen. + +Covered by rebased test. + +* loader/cache/CachedResourceLoader.cpp: +(WebCore::CachedResourceLoader::determineRevalidationPolicy const): + 2018-01-02 Jiewen Tan
[webkit-changes] [226332] trunk
Title: [226332] trunk Revision 226332 Author jiewen_...@apple.com Date 2018-01-02 12:28:31 -0800 (Tue, 02 Jan 2018) Log Message Update Credential Management API for WebAuthentication https://bugs.webkit.org/show_bug.cgi?id=181082 Reviewed by Brent Fulgham. LayoutTests/imported/w3c: * web-platform-tests/credential-management/credentialscontainer-create-basics.https-expected.txt: * web-platform-tests/credential-management/idl.https-expected.txt: Source/WebCore: Part 2/2 This patch implements Core API from Credential Management API: https://www.w3.org/TR/credential-management-1/#core. which is required by WebAuthN. It also sets the CredentialManagement runtime flag to enable testing. Note that it introduces a dummy PublicKeyCredential interface for testing functionalities of the Credential interface, which cannot be instantiated. Tests: http/wpt/credential-management/credentialscontainer-create-basics.https.html http/wpt/credential-management/credentialscontainer-get-basics.https.html http/wpt/credential-management/credentialscontainer-preventSilentAccess-basics.https.html http/wpt/credential-management/idl.https.html * CMakeLists.txt: * DerivedSources.make: * Modules/credentialmanagement/BasicCredential.cpp: (WebCore::BasicCredential::BasicCredential): (WebCore::BasicCredential::type const): * Modules/credentialmanagement/BasicCredential.h: (WebCore::BasicCredential::discovery const): * Modules/credentialmanagement/BasicCredential.idl: * Modules/credentialmanagement/CredentialCreationOptions.h: * Modules/credentialmanagement/CredentialCreationOptions.idl: * Modules/credentialmanagement/CredentialRequestOptions.h: * Modules/credentialmanagement/CredentialRequestOptions.idl: * Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::CredentialsContainer): (WebCore::CredentialsContainer::isSameOriginWithItsAncestors): (WebCore::CredentialsContainer::dispatchTask): (WebCore::CredentialsContainer::get): (WebCore::CredentialsContainer::store): (WebCore::CredentialsContainer::isCreate): (WebCore::CredentialsContainer::preventSilentAccess): * Modules/credentialmanagement/CredentialsContainer.h: (WebCore::CredentialsContainer::create): (WebCore::CredentialsContainer::CredentialsContainer): Deleted. * Modules/credentialmanagement/CredentialsContainer.idl: * Modules/credentialmanagement/NavigatorCredentials.cpp: (WebCore::NavigatorCredentials::credentials): * Modules/credentialmanagement/NavigatorCredentials.h: * Modules/credentialmanagement/NavigatorCredentials.idl: * Modules/webauthn/PublicKeyCredential.cpp: Copied from Source/WebCore/Modules/credentialmanagement/BasicCredential.cpp. (WebCore::PublicKeyCredential::PublicKeyCredential): (WebCore::PublicKeyCredential::collectFromCredentialStore): (WebCore::PublicKeyCredential::discoverFromExternalSource): (WebCore::PublicKeyCredential::store): (WebCore::PublicKeyCredential::create): * Modules/webauthn/PublicKeyCredential.h: Copied from Source/WebCore/Modules/credentialmanagement/BasicCredential.cpp. * Modules/webauthn/PublicKeyCredential.idl: Copied from Source/WebCore/Modules/credentialmanagement/BasicCredential.idl. * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * bindings/js/WebCoreBuiltinNames.h: * page/RuntimeEnabledFeatures.h: Tools: Enable Credential Management API for testing. * DumpRenderTree/TestOptions.h: * WebKitTestRunner/TestOptions.h: LayoutTests: This patch moves original tests for Credential Management API to http/wpt/ to better integrate with web-platform-tests infrastructure. Hopefully this will help us later on contribute tests back to W3C. * credentials/idlharness-expected.txt: Removed. * credentials/idlharness.html: Removed. * fast/dom/navigator-detached-no-crash-expected.txt: * http/wpt/credential-management/credentialscontainer-create-basics.https-expected.txt: Added. * http/wpt/credential-management/credentialscontainer-create-basics.https.html: Added. * http/wpt/credential-management/credentialscontainer-get-basics.https-expected.txt: Added. * http/wpt/credential-management/credentialscontainer-get-basics.https.html: Added. * http/wpt/credential-management/credentialscontainer-preventSilentAccess-basics.https-expected.txt: Added. * http/wpt/credential-management/credentialscontainer-preventSilentAccess-basics.https.html: Added. * http/wpt/credential-management/idl.https-expected.txt: Added. * http/wpt/credential-management/idl.https.html: Added. * platform/gtk/TestExpectations: * platform/gtk/fast/dom/navigator-detached-no-crash-expected.txt: * platform/mac-elcapitan-wk2/fast/dom/navigator-detached-no-crash-expected.txt: * platform/mac-wk1/fast/dom/navigator-detached-no-crash-expected.txt: * platform/win/TestExpectations: * platform/win/fast/dom/navigator-detached-no-crash-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/navigator-detached-no-crash-expected.txt trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported
[webkit-changes] [226331] trunk/Source/JavaScriptCore
Title: [226331] trunk/Source/_javascript_Core Revision 226331 Author timothy_hor...@apple.com Date 2018-01-02 12:20:16 -0800 (Tue, 02 Jan 2018) Log Message Fix the MathCommon build with a recent compiler https://bugs.webkit.org/show_bug.cgi?id=181216 Reviewed by Sam Weinig. * runtime/MathCommon.cpp: (JSC::fdlibmPow): This cast drops the 'const' qualifier from the pointer to 'one', but it doesn't have to, and it makes the compiler sad. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/MathCommon.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (226330 => 226331) --- trunk/Source/_javascript_Core/ChangeLog 2018-01-02 20:02:50 UTC (rev 226330) +++ trunk/Source/_javascript_Core/ChangeLog 2018-01-02 20:20:16 UTC (rev 226331) @@ -1 +1,13 @@ +2018-01-02 Tim Horton + +Fix the MathCommon build with a recent compiler +https://bugs.webkit.org/show_bug.cgi?id=181216 + +Reviewed by Sam Weinig. + +* runtime/MathCommon.cpp: +(JSC::fdlibmPow): +This cast drops the 'const' qualifier from the pointer to 'one', +but it doesn't have to, and it makes the compiler sad. + == Rolled over to ChangeLog-2018-01-01 == Modified: trunk/Source/_javascript_Core/runtime/MathCommon.cpp (226330 => 226331) --- trunk/Source/_javascript_Core/runtime/MathCommon.cpp 2018-01-02 20:02:50 UTC (rev 226330) +++ trunk/Source/_javascript_Core/runtime/MathCommon.cpp 2018-01-02 20:20:16 UTC (rev 226331) @@ -179,7 +179,7 @@ int hx,hy,ix,iy; unsigned lx,ly; -i0 = ((*(int*)&one)>>29)^1; i1=1-i0; +i0 = ((*(const int*)&one)>>29)^1; i1=1-i0; hx = __HI(x); lx = __LO(x); hy = __HI(y); ly = __LO(y); ix = hx&0x7fff; iy = hy&0x7fff; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [226330] trunk/Source/WebKit
Title: [226330] trunk/Source/WebKit Revision 226330 Author achristen...@apple.com Date 2018-01-02 12:02:50 -0800 (Tue, 02 Jan 2018) Log Message Use BlockPtrs and lambdas instead of new/delete to pass parameters to blocks in WebViewImpl::performDragOperation https://bugs.webkit.org/show_bug.cgi?id=180795 Reviewed by Brent Fulgham. * UIProcess/Cocoa/WebViewImpl.mm: (WebKit::WebViewImpl::performDragOperation): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm Diff Modified: trunk/Source/WebKit/ChangeLog (226329 => 226330) --- trunk/Source/WebKit/ChangeLog 2018-01-02 19:52:35 UTC (rev 226329) +++ trunk/Source/WebKit/ChangeLog 2018-01-02 20:02:50 UTC (rev 226330) @@ -1,3 +1,13 @@ +2018-01-02 Alex Christensen + +Use BlockPtrs and lambdas instead of new/delete to pass parameters to blocks in WebViewImpl::performDragOperation +https://bugs.webkit.org/show_bug.cgi?id=180795 + +Reviewed by Brent Fulgham. + +* UIProcess/Cocoa/WebViewImpl.mm: +(WebKit::WebViewImpl::performDragOperation): + 2018-01-02 Michael Catanzaro [WPE][GTK] Implement the assignment of ProcessIdentifiers to child processes Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm (226329 => 226330) --- trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm 2018-01-02 19:52:35 UTC (rev 226329) +++ trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm 2018-01-02 20:02:50 UTC (rev 226330) @@ -3690,7 +3690,7 @@ { WebCore::IntPoint client([m_view convertPoint:draggingInfo.draggingLocation fromView:nil]); WebCore::IntPoint global(WebCore::globalPoint(draggingInfo.draggingLocation, [m_view window])); -WebCore::DragData *dragData = new WebCore::DragData(draggingInfo, client, global, static_cast(draggingInfo.draggingSourceOperationMask), applicationFlagsForDrag(m_view.getAutoreleased(), draggingInfo)); +WebCore::DragData dragData(draggingInfo, client, global, static_cast(draggingInfo.draggingSourceOperationMask), applicationFlagsForDrag(m_view.getAutoreleased(), draggingInfo)); NSArray *types = draggingInfo.draggingPasteboard.types; SandboxExtension::Handle sandboxExtensionHandle; @@ -3698,10 +3698,8 @@ if ([types containsObject:WebCore::legacyFilenamesPasteboardType()]) { NSArray *files = [draggingInfo.draggingPasteboard propertyListForType:WebCore::legacyFilenamesPasteboardType()]; -if (![files isKindOfClass:[NSArray class]]) { -delete dragData; +if (![files isKindOfClass:[NSArray class]]) return false; -} Vector fileNames; @@ -3712,45 +3710,40 @@ #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101200 else if (![types containsObject:PasteboardTypes::WebArchivePboardType] && [types containsObject:WebCore::legacyFilesPromisePasteboardType()]) { NSArray *files = [draggingInfo.draggingPasteboard propertyListForType:WebCore::legacyFilesPromisePasteboardType()]; -if (![files isKindOfClass:[NSArray class]]) { -delete dragData; +if (![files isKindOfClass:[NSArray class]]) return false; -} size_t fileCount = files.count; -Vector *fileNames = new Vector; +Vector fileNames; NSURL *dropLocation = [NSURL fileURLWithPath:NSTemporaryDirectory() isDirectory:YES]; String pasteboardName = draggingInfo.draggingPasteboard.name; -[draggingInfo enumerateDraggingItemsWithOptions:0 forView:m_view.getAutoreleased() classes:@[[NSFilePromiseReceiver class]] searchOptions:@{ } usingBlock:^(NSDraggingItem * __nonnull draggingItem, NSInteger idx, BOOL * __nonnull stop) { +[draggingInfo enumerateDraggingItemsWithOptions:0 forView:m_view.getAutoreleased() classes:@[[NSFilePromiseReceiver class]] searchOptions:@{ } usingBlock:BlockPtr::fromCallable([this, fileNames = WTFMove(fileNames), dropLocation = retainPtr(dropLocation), fileCount, dragData = WTFMove(dragData), pasteboardName](NSDraggingItem * __nonnull draggingItem, NSInteger idx, BOOL * __nonnull stop) mutable { NSFilePromiseReceiver *item = draggingItem.item; NSDictionary *options = @{ }; RetainPtr queue = adoptNS([NSOperationQueue new]); -[item receivePromisedFilesAtDestination:dropLocation options:options operationQueue:queue.get() reader:^(NSURL * _Nonnull fileURL, NSError * _Nullable errorOrNil) { +[item receivePromisedFilesAtDestination:dropLocation.get() options:options operationQueue:queue.get() reader:BlockPtr::fromCallable([this, fileNames = WTFMove(fileNames), fileCount, dragData = WTFMove(dragData), pasteboardName](NSURL * _Nonnull fileURL, NSError * _Nullable errorOrNil) mutable { if (errorOrNil) return; -dispatch_async(dispatch_get_main_queue(), [this, path = RetainPtr(fileURL.path), fileNames, fileCount, dragData, pasteboardName] { -file
[webkit-changes] [226329] trunk/Source/WebKitLegacy/win
Title: [226329] trunk/Source/WebKitLegacy/win Revision 226329 Author commit-qu...@webkit.org Date 2018-01-02 11:52:35 -0800 (Tue, 02 Jan 2018) Log Message [Win] Web Inspector: Wrongly placed inspector highlight in HiDPI https://bugs.webkit.org/show_bug.cgi?id=181173 Patch by Fujii Hironori on 2018-01-02 Reviewed by Alex Christensen. * WebNodeHighlight.cpp: (WebNodeHighlight::update): Scale the GraphicsContext. Modified Paths trunk/Source/WebKitLegacy/win/ChangeLog trunk/Source/WebKitLegacy/win/WebNodeHighlight.cpp Diff Modified: trunk/Source/WebKitLegacy/win/ChangeLog (226328 => 226329) --- trunk/Source/WebKitLegacy/win/ChangeLog 2018-01-02 18:29:40 UTC (rev 226328) +++ trunk/Source/WebKitLegacy/win/ChangeLog 2018-01-02 19:52:35 UTC (rev 226329) @@ -1,3 +1,13 @@ +2018-01-02 Fujii Hironori + +[Win] Web Inspector: Wrongly placed inspector highlight in HiDPI +https://bugs.webkit.org/show_bug.cgi?id=181173 + +Reviewed by Alex Christensen. + +* WebNodeHighlight.cpp: +(WebNodeHighlight::update): Scale the GraphicsContext. + 2017-12-26 Carlos Alberto Lopez Perez REGRESSION(r225769): Build error with constexpr std::max // std::min in libdstdc++4 Modified: trunk/Source/WebKitLegacy/win/WebNodeHighlight.cpp (226328 => 226329) --- trunk/Source/WebKitLegacy/win/WebNodeHighlight.cpp 2018-01-02 18:29:40 UTC (rev 226328) +++ trunk/Source/WebKitLegacy/win/WebNodeHighlight.cpp 2018-01-02 19:52:35 UTC (rev 226329) @@ -157,6 +157,7 @@ ::SelectObject(hdc.get(), hbmp.get()); GraphicsContext context(hdc.get()); +context.scale(m_inspectedWebView->page()->deviceScaleFactor()); m_inspectedWebView->page()->inspectorController().drawHighlight(context); BLENDFUNCTION bf; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [226328] trunk/LayoutTests
Title: [226328] trunk/LayoutTests Revision 226328 Author ms2...@igalia.com Date 2018-01-02 10:29:40 -0800 (Tue, 02 Jan 2018) Log Message LayoutTests/imported/w3c: Update imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html from upstream wpt. https://bugs.webkit.org/show_bug.cgi?id=172255 Unreviewed test gardening. * web-platform-tests/html/browsers/windows/browsing-context-expected.txt: rebaseline. * web-platform-tests/html/browsers/windows/browsing-context.html: update. LayoutTests: Remove obsolete expectations for updated imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html. https://bugs.webkit.org/show_bug.cgi?id=172255 Unreviewed test gardening. * platform/gtk/TestExpectations: * platform/mac/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/browsing-context-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html trunk/LayoutTests/platform/gtk/TestExpectations trunk/LayoutTests/platform/mac/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (226327 => 226328) --- trunk/LayoutTests/ChangeLog 2018-01-02 18:17:12 UTC (rev 226327) +++ trunk/LayoutTests/ChangeLog 2018-01-02 18:29:40 UTC (rev 226328) @@ -1,3 +1,13 @@ +2018-01-02 Ms2ger + +Remove obsolete expectations for updated imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html. +https://bugs.webkit.org/show_bug.cgi?id=172255 + +Unreviewed test gardening. + +* platform/gtk/TestExpectations: +* platform/mac/TestExpectations: + 2018-01-02 Oleksandr Skachkov WebAssembly: sending module to iframe fails Modified: trunk/LayoutTests/imported/w3c/ChangeLog (226327 => 226328) --- trunk/LayoutTests/imported/w3c/ChangeLog 2018-01-02 18:17:12 UTC (rev 226327) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2018-01-02 18:29:40 UTC (rev 226328) @@ -1 +1,11 @@ +2018-01-02 Ms2ger + +Update imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html from upstream wpt. +https://bugs.webkit.org/show_bug.cgi?id=172255 + +Unreviewed test gardening. + +* web-platform-tests/html/browsers/windows/browsing-context-expected.txt: rebaseline. +* web-platform-tests/html/browsers/windows/browsing-context.html: update. + == Rolled over to ChangeLog-2018-01-01 == Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/browsing-context-expected.txt (226327 => 226328) --- trunk/LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/browsing-context-expected.txt 2018-01-02 18:17:12 UTC (rev 226327) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/browsing-context-expected.txt 2018-01-02 18:29:40 UTC (rev 226328) @@ -2,5 +2,4 @@ FAIL Check that browsing context has new, ready HTML document assert_equals: The document's encoding should be 'UTF-8'. expected "UTF-8" but got "windows-1252" PASS Check that new document nodes extant, empty PASS Check the document properties corresponding to the creator browsing context -FAIL Check the history.length of the created browsing context assert_equals: The history.length should be 1. expected 1 but got 100 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html (226327 => 226328) --- trunk/LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html 2018-01-02 18:17:12 UTC (rev 226327) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html 2018-01-02 18:29:40 UTC (rev 226328) @@ -44,11 +44,6 @@ assert_equals(doc.referrer, document.URL, "The document's referrer should be its creator document's address."); assert_equals(iframe.contentWindow.parent.document, document); }, "Check the document properties corresponding to the creator browsing context"); - -test(function () { - assert_equals(iframe.contentWindow.history.length, 1, "The history.length should be 1."); -}, "Check the history.length of the created browsing context"); - Modified: trunk/LayoutTests/platform/gtk/TestExpectations (226327 => 226328) --- trunk/LayoutTests/platform/gtk/TestExpectations 2018-01-02 18:17:12 UTC (rev 226327) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2018-01-02 18:29:40 UTC (rev 226328) @@ -1854,8 +1854,6 @@ webkit.org/b/168373 media/video-multiple-concurrent-playback.html [ Failure Crash ] webkit.org/b/168373 media/video-seek-past-end-paused.html [ Failure Pass ] -webkit.org/b/172255 imported/w3c/web-platform-tests/html/browsers/windows/browsing-context.html [ Pass Failure ] - webkit.org/b/174240 svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg [ Pass Timeout ] webkit.org/b/174353 media/video-rest
[webkit-changes] [226327] trunk/Source/WebKit
Title: [226327] trunk/Source/WebKit Revision 226327 Author mcatanz...@igalia.com Date 2018-01-02 10:17:12 -0800 (Tue, 02 Jan 2018) Log Message [WPE][GTK] Implement the assignment of ProcessIdentifiers to child processes https://bugs.webkit.org/show_bug.cgi?id=181187 Reviewed by Brady Eidson. * Shared/ChildProcess.cpp: Make the ProcessIdentifier mandatory. (WebKit::ChildProcess::initialize): * Shared/unix/ChildProcessMain.cpp: Initialize ChildProcessInitializationParameters with the ProcessIdentifier. (WebKit::ChildProcessMainBase::parseCommandLine): * UIProcess/Launcher/glib/ProcessLauncherGLib.cpp: Copy the ProcessIdentifier from LaunchOptions into argv. (WebKit::ProcessLauncher::launchProcess): * WebProcess/wpe/WebProcessMainWPE.cpp: Expect the WPE socket ID later in the command line. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/ChildProcess.cpp trunk/Source/WebKit/Shared/unix/ChildProcessMain.cpp trunk/Source/WebKit/UIProcess/Launcher/glib/ProcessLauncherGLib.cpp trunk/Source/WebKit/WebProcess/wpe/WebProcessMainWPE.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (226326 => 226327) --- trunk/Source/WebKit/ChangeLog 2018-01-02 18:17:07 UTC (rev 226326) +++ trunk/Source/WebKit/ChangeLog 2018-01-02 18:17:12 UTC (rev 226327) @@ -1,3 +1,20 @@ +2018-01-02 Michael Catanzaro + +[WPE][GTK] Implement the assignment of ProcessIdentifiers to child processes +https://bugs.webkit.org/show_bug.cgi?id=181187 + +Reviewed by Brady Eidson. + +* Shared/ChildProcess.cpp: Make the ProcessIdentifier mandatory. +(WebKit::ChildProcess::initialize): +* Shared/unix/ChildProcessMain.cpp: Initialize ChildProcessInitializationParameters with the +ProcessIdentifier. +(WebKit::ChildProcessMainBase::parseCommandLine): +* UIProcess/Launcher/glib/ProcessLauncherGLib.cpp: Copy the ProcessIdentifier from +LaunchOptions into argv. +(WebKit::ProcessLauncher::launchProcess): +* WebProcess/wpe/WebProcessMainWPE.cpp: Expect the WPE socket ID later in the command line. + 2018-01-02 Alex Christensen Use new WebsiteDataStore passed in through decidePolicyForNavigation SPI Modified: trunk/Source/WebKit/Shared/ChildProcess.cpp (226326 => 226327) --- trunk/Source/WebKit/Shared/ChildProcess.cpp 2018-01-02 18:17:07 UTC (rev 226326) +++ trunk/Source/WebKit/Shared/ChildProcess.cpp 2018-01-02 18:17:12 UTC (rev 226327) @@ -64,17 +64,9 @@ void ChildProcess::initialize(const ChildProcessInitializationParameters& parameters) { -#if PLATFORM(COCOA) -if (!parameters.processIdentifier) -RELEASE_ASSERT_WITH_MESSAGE(false, "Unable to initialize child process without a WebCore process identifier"); -#else -if (!parameters.processIdentifier) -LOG_ERROR("All child processes should have a WebCore::ProcessIdentifier vended by the UI process, but this one doesn't. This will cause things to break."); -#endif +RELEASE_ASSERT_WITH_MESSAGE(parameters.processIdentifier, "Unable to initialize child process without a WebCore process identifier"); +Process::setIdentifier(*parameters.processIdentifier); -if (parameters.processIdentifier) -Process::setIdentifier(*parameters.processIdentifier); - platformInitialize(); #if PLATFORM(COCOA) Modified: trunk/Source/WebKit/Shared/unix/ChildProcessMain.cpp (226326 => 226327) --- trunk/Source/WebKit/Shared/unix/ChildProcessMain.cpp 2018-01-02 18:17:07 UTC (rev 226326) +++ trunk/Source/WebKit/Shared/unix/ChildProcessMain.cpp 2018-01-02 18:17:12 UTC (rev 226327) @@ -26,6 +26,7 @@ #include "config.h" #include "ChildProcessMain.h" +#include #include namespace WebKit { @@ -32,11 +33,12 @@ bool ChildProcessMainBase::parseCommandLine(int argc, char** argv) { -ASSERT(argc >= 2); -if (argc < 2) +ASSERT(argc >= 3); +if (argc < 3) return false; -m_parameters.connectionIdentifier = atoi(argv[1]); +m_parameters.processIdentifier = makeObjectIdentifier(atoll(argv[1])); +m_parameters.connectionIdentifier = atoi(argv[2]); return true; } Modified: trunk/Source/WebKit/UIProcess/Launcher/glib/ProcessLauncherGLib.cpp (226326 => 226327) --- trunk/Source/WebKit/UIProcess/Launcher/glib/ProcessLauncherGLib.cpp 2018-01-02 18:17:07 UTC (rev 226326) +++ trunk/Source/WebKit/UIProcess/Launcher/glib/ProcessLauncherGLib.cpp 2018-01-02 18:17:12 UTC (rev 226327) @@ -94,8 +94,9 @@ } realExecutablePath = FileSystem::fileSystemRepresentation(executablePath); +GUniquePtr processIdentifier(g_strdup_printf("%" PRIu64, m_launchOptions.processIdentifier.toUInt64())); GUniquePtr webkitSocket(g_strdup_printf("%d", socketPair.client)); -unsigned nargs = 4; // size of the argv array for g_spawn_async() +unsigned nargs = 5; // size of the argv array for g_spawn_async() #if PLATFORM(WPE) GUniquePtr wpeSocket; @@ -124,6 +125,7 @@ argv[i++] = const_cast(arg.
[webkit-changes] [226326] trunk/Tools
Title: [226326] trunk/Tools Revision 226326 Author mcatanz...@igalia.com Date 2018-01-02 10:17:07 -0800 (Tue, 02 Jan 2018) Log Message [GTK] Test /webkit2/WebKitWebExtension/form-controls-associated-signal is flaky https://bugs.webkit.org/show_bug.cgi?id=168194 Reviewed by Carlos Garcia Campos. Fix an assertion and unskip the test. The order that form controls are associated is not guaranteed. * Scripts/run-gtk-tests: (GtkTestRunner): * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: (didAssociateFormControlsCallback): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/run-gtk-tests trunk/Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp Diff Modified: trunk/Tools/ChangeLog (226325 => 226326) --- trunk/Tools/ChangeLog 2018-01-02 17:21:37 UTC (rev 226325) +++ trunk/Tools/ChangeLog 2018-01-02 18:17:07 UTC (rev 226326) @@ -1,3 +1,18 @@ +2018-01-02 Michael Catanzaro + +[GTK] Test /webkit2/WebKitWebExtension/form-controls-associated-signal is flaky +https://bugs.webkit.org/show_bug.cgi?id=168194 + +Reviewed by Carlos Garcia Campos. + +Fix an assertion and unskip the test. The order that form controls are associated is not +guaranteed. + +* Scripts/run-gtk-tests: +(GtkTestRunner): +* TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: +(didAssociateFormControlsCallback): + 2018-01-02 Alex Christensen Use new WebsiteDataStore passed in through decidePolicyForNavigation SPI Modified: trunk/Tools/Scripts/run-gtk-tests (226325 => 226326) --- trunk/Tools/Scripts/run-gtk-tests 2018-01-02 17:21:37 UTC (rev 226325) +++ trunk/Tools/Scripts/run-gtk-tests 2018-01-02 18:17:07 UTC (rev 226326) @@ -41,7 +41,6 @@ SkippedTest("WebKit2Gtk/TestCookieManager", "/webkit2/WebKitCookieManager/persistent-storage", "Test is flaky", 134580), SkippedTest("WebKit2Gtk/TestPrinting", "/webkit2/WebKitPrintOperation/custom-widget", "Test is flaky", 168196), SkippedTest("WebKit2Gtk/TestWebViewEditor", "/webkit2/WebKitWebView/editable/editable", "Test hits an assertion in Debug builds", 151654, "Debug"), -SkippedTest("WebKit2Gtk/TestWebExtensions", "/webkit2/WebKitWebExtension/form-controls-associated-signal", "Test is flaky", 168194), SkippedTest("WebKit2Gtk/TestWebExtensions", "/webkit2/WebKitWebView/install-missing-plugins-permission-request", "Test times out", 147822), SkippedTest("WebKit/TestWebKit", "WebKit.MouseMoveAfterCrash", "Test is flaky", 85066), SkippedTest("WebKit/TestWebKit", "WebKit.NewFirstVisuallyNonEmptyLayoutForImages", "Test is flaky", 85066), Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp (226325 => 226326) --- trunk/Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp 2018-01-02 17:21:37 UTC (rev 226325) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp 2018-01-02 18:17:07 UTC (rev 226326) @@ -223,7 +223,7 @@ { const char* formIds; g_variant_get(result, "(&s)", &formIds); -g_assert(!g_strcmp0(formIds, FORM_ID FORM2_ID) || !g_strcmp0(formIds, INPUT_ID)); +g_assert(!g_strcmp0(formIds, FORM_ID FORM2_ID) || !g_strcmp0(formIds, FORM2_ID FORM_ID) || !g_strcmp0(formIds, INPUT_ID)); test->quitMainLoop(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [226325] trunk
Title: [226325] trunk Revision 226325 Author achristen...@apple.com Date 2018-01-02 09:21:37 -0800 (Tue, 02 Jan 2018) Log Message Use new WebsiteDataStore passed in through decidePolicyForNavigation SPI https://bugs.webkit.org/show_bug.cgi?id=180897 Reviewed by Brent Fulgham. Source/WebKit: * Shared/WebsitePoliciesData.cpp: (WebKit::WebsitePoliciesData::applyToDocumentLoader): * UIProcess/Cocoa/NavigationState.mm: (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction): * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::changeWebsiteDataStore): * UIProcess/WebPageProxy.h: * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::pageBeginUsingWebsiteDataStore): (WebKit::WebProcessPool::pageEndUsingWebsiteDataStore): (WebKit::WebProcessPool::pageAddedToProcess): Deleted. (WebKit::WebProcessPool::pageRemovedFromProcess): Deleted. * UIProcess/WebProcessPool.h: * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::addExistingWebPage): (WebKit::WebProcessProxy::removeWebPage): * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: (WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession): Tools: Test two forms of storage to be sure we are using a different WebsiteDataStore: cookies and sessionStorage. * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm: (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): (-[WebsitePoliciesWebsiteDataStoreDelegate webView:startURLSchemeTask:]): (-[WebsitePoliciesWebsiteDataStoreDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): (websiteDataStoreTestWebView): (TEST): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp trunk/Source/WebKit/UIProcess/Cocoa/NavigationState.mm trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebProcessPool.h trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm Diff Modified: trunk/Source/WebKit/ChangeLog (226324 => 226325) --- trunk/Source/WebKit/ChangeLog 2018-01-02 17:18:17 UTC (rev 226324) +++ trunk/Source/WebKit/ChangeLog 2018-01-02 17:21:37 UTC (rev 226325) @@ -1,5 +1,32 @@ 2018-01-02 Alex Christensen +Use new WebsiteDataStore passed in through decidePolicyForNavigation SPI +https://bugs.webkit.org/show_bug.cgi?id=180897 + + +Reviewed by Brent Fulgham. + +* Shared/WebsitePoliciesData.cpp: +(WebKit::WebsitePoliciesData::applyToDocumentLoader): +* UIProcess/Cocoa/NavigationState.mm: +(WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction): +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::changeWebsiteDataStore): +* UIProcess/WebPageProxy.h: +* UIProcess/WebProcessPool.cpp: +(WebKit::WebProcessPool::pageBeginUsingWebsiteDataStore): +(WebKit::WebProcessPool::pageEndUsingWebsiteDataStore): +(WebKit::WebProcessPool::pageAddedToProcess): Deleted. +(WebKit::WebProcessPool::pageRemovedFromProcess): Deleted. +* UIProcess/WebProcessPool.h: +* UIProcess/WebProcessProxy.cpp: +(WebKit::WebProcessProxy::addExistingWebPage): +(WebKit::WebProcessProxy::removeWebPage): +* WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: +(WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession): + +2018-01-02 Alex Christensen + Only use CookieStorageShim when we aren't using NetworkSession https://bugs.webkit.org/show_bug.cgi?id=180766 Modified: trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp (226324 => 226325) --- trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp 2018-01-02 17:18:17 UTC (rev 226324) +++ trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp 2018-01-02 17:21:37 UTC (rev 226325) @@ -27,7 +27,10 @@ #include "WebsitePoliciesData.h" #include "ArgumentCoders.h" +#include "WebProcess.h" #include +#include +#include namespace WebKit { @@ -112,6 +115,16 @@ documentLoader.setAutoplayPolicy(WebCore::AutoplayPolicy::Deny); break; } + +if (websitePolicies.websiteDataStoreParameters) { +if (auto* frame = documentLoader.frame()) { +if (auto* page = frame->page()) { +auto sessionID = websitePolicies.websiteDataStoreParameters->networkSessionParameters.sessionID; +WebProcess::singleton().addWebsiteDataStore(WTFMove(*websitePolicies.websiteDataStoreParameters)); +page->setSessionID(sessionID); +} +} +} } } Modified: trunk/Source/WebKit/UIProcess/Cocoa/NavigationState.mm (226324 => 226325) --- trunk/Source/WebKit
[webkit-changes] [226324] trunk/Source/WebKit
Title: [226324] trunk/Source/WebKit Revision 226324 Author achristen...@apple.com Date 2018-01-02 09:18:17 -0800 (Tue, 02 Jan 2018) Log Message Only use CookieStorageShim when we aren't using NetworkSession https://bugs.webkit.org/show_bug.cgi?id=180766 Reviewed by Brent Fulgham. * Shared/mac/CookieStorageShim.h: * Shared/mac/CookieStorageShim.mm: * WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeWebProcess): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/mac/CookieStorageShim.h trunk/Source/WebKit/Shared/mac/CookieStorageShim.mm trunk/Source/WebKit/WebProcess/WebProcess.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (226323 => 226324) --- trunk/Source/WebKit/ChangeLog 2018-01-02 17:17:19 UTC (rev 226323) +++ trunk/Source/WebKit/ChangeLog 2018-01-02 17:18:17 UTC (rev 226324) @@ -1,5 +1,17 @@ 2018-01-02 Alex Christensen +Only use CookieStorageShim when we aren't using NetworkSession +https://bugs.webkit.org/show_bug.cgi?id=180766 + +Reviewed by Brent Fulgham. + +* Shared/mac/CookieStorageShim.h: +* Shared/mac/CookieStorageShim.mm: +* WebProcess/WebProcess.cpp: +(WebKit::WebProcess::initializeWebProcess): + +2018-01-02 Alex Christensen + Clean up context menu code https://bugs.webkit.org/show_bug.cgi?id=181074 Modified: trunk/Source/WebKit/Shared/mac/CookieStorageShim.h (226323 => 226324) --- trunk/Source/WebKit/Shared/mac/CookieStorageShim.h 2018-01-02 17:17:19 UTC (rev 226323) +++ trunk/Source/WebKit/Shared/mac/CookieStorageShim.h 2018-01-02 17:18:17 UTC (rev 226324) @@ -23,9 +23,10 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef CookieStorageShim_h -#define CookieStorageShim_h +#pragma once +#if !USE(NETWORK_SESSION) + #include #include @@ -47,4 +48,4 @@ } -#endif // CookieStorageShim_h +#endif Modified: trunk/Source/WebKit/Shared/mac/CookieStorageShim.mm (226323 => 226324) --- trunk/Source/WebKit/Shared/mac/CookieStorageShim.mm 2018-01-02 17:17:19 UTC (rev 226323) +++ trunk/Source/WebKit/Shared/mac/CookieStorageShim.mm 2018-01-02 17:18:17 UTC (rev 226324) @@ -26,6 +26,8 @@ #include "config.h" #include "CookieStorageShim.h" +#if !USE(NETWORK_SESSION) + #include "CookieStorageShimLibrary.h" #include "NetworkConnectionToWebProcess.h" #include "NetworkProcessConnection.h" @@ -133,3 +135,6 @@ } @end + +#endif + Modified: trunk/Source/WebKit/WebProcess/WebProcess.cpp (226323 => 226324) --- trunk/Source/WebKit/WebProcess/WebProcess.cpp 2018-01-02 17:17:19 UTC (rev 226323) +++ trunk/Source/WebKit/WebProcess/WebProcess.cpp 2018-01-02 17:18:17 UTC (rev 226324) @@ -385,7 +385,7 @@ ensureNetworkProcessConnection(); -#if PLATFORM(COCOA) +#if PLATFORM(COCOA) && !USE(NETWORK_SESSION) CookieStorageShim::singleton().initialize(); #endif setTerminationTimeout(parameters.terminationTimeout); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes