[webkit-changes] [211473] trunk
Title: [211473] trunk Revision 211473 Author utatane@gmail.com Date 2017-02-01 02:00:32 -0800 (Wed, 01 Feb 2017) Log Message Propagate networking errors correctly for import() operator https://bugs.webkit.org/show_bug.cgi?id=167501 Reviewed by Ryosuke Niwa. .: * Source/ModuleFetchFailureKind.h: Added. Source/WebCore: We use the promise chain inside the module loader pipeline. The problem is that, 1. The errors of loading module scripts are propagated through the promise's rejection. 2. Some module related errors like syntax error (when scanning module dependencies) are reported at loading time (evaluating time). These errors are propagated through the promise rejections and dumped to the console. LoadableModuleScript set catch handler for that and print these errors to the console for ScriptElement. 3. Some of errors are already reported to the console. For example, networking errors are reported by the CachedModuleLoader. 4. But there is no way to distinguish between (2) and (3) at the catch handler. Previously, we propagate the special symbol for the already reported errors to distinguish that. This was OK because these errors cannot be catched by the user code. However, recent `import()` call needs to expose these errors to the user code. So now, accidentally, the special purpose symbol is exposed. Instead of propagating the special symbol, this patch just propagates the errors. But these error objects are annotated with the private symbol. So these errors can be distinguished from the other ones. Currently, we do not have the way to expose the error details to the client of the CachedScript. So we just report the error with the failed / canceled. This should be more descriptive error messages in the separate patch[1]. [1]: https://bugs.webkit.org/show_bug.cgi?id=167553 Tests: http/tests/security/mixedContent/import-insecure-script-in-iframe.html js/dom/modules/import-not-found-error.html * WebCore.xcodeproj/project.pbxproj: * bindings/js/JSDOMPromise.h: (WebCore::DeferredPromise::resolveWithCallback): (WebCore::DeferredPromise::rejectWithCallback): * bindings/js/ScriptController.cpp: (WebCore::ScriptController::setupModuleScriptHandlers): * bindings/js/ScriptController.h: (WebCore::ScriptController::moduleLoaderAlreadyReportedErrorSymbol): Deleted. (WebCore::ScriptController::moduleLoaderFetchingIsCanceledSymbol): Deleted. * bindings/js/ScriptModuleLoader.cpp: (WebCore::rejectToPropagateNetworkError): (WebCore::ScriptModuleLoader::fetch): (WebCore::ScriptModuleLoader::notifyFinished): * bindings/js/WebCoreBuiltinNames.h: LayoutTests: * http/tests/security/mixedContent/import-insecure-script-in-iframe-expected.txt: Added. * http/tests/security/mixedContent/import-insecure-script-in-iframe.html: Added. * http/tests/security/mixedContent/resources/frame-with-insecure-import.html: Added. * js/dom/modules/import-not-found-error-expected.txt: Added. * js/dom/modules/import-not-found-error.html: Added. Modified Paths trunk/ChangeLog trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/bindings/js/JSDOMPromise.h trunk/Source/WebCore/bindings/js/ScriptController.cpp trunk/Source/WebCore/bindings/js/ScriptController.h trunk/Source/WebCore/bindings/js/ScriptModuleLoader.cpp trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h Added Paths trunk/LayoutTests/http/tests/security/mixedContent/import-insecure-script-in-iframe-expected.txt trunk/LayoutTests/http/tests/security/mixedContent/import-insecure-script-in-iframe.html trunk/LayoutTests/http/tests/security/mixedContent/resources/frame-with-insecure-import.html trunk/LayoutTests/js/dom/modules/import-not-found-error-expected.txt trunk/LayoutTests/js/dom/modules/import-not-found-error.html trunk/Source/ModuleFetchFailureKind.h Diff Modified: trunk/ChangeLog (211472 => 211473) --- trunk/ChangeLog 2017-02-01 07:55:44 UTC (rev 211472) +++ trunk/ChangeLog 2017-02-01 10:00:32 UTC (rev 211473) @@ -1,3 +1,12 @@ +2017-02-01 Yusuke Suzuki + +Propagate networking errors correctly for import() operator +https://bugs.webkit.org/show_bug.cgi?id=167501 + +Reviewed by Ryosuke Niwa. + +* Source/ModuleFetchFailureKind.h: Added. + 2017-01-31 Carlos Garcia Campos Unreviewed. Update OptionsGTK.cmake and NEWS for 2.15.4 release. Modified: trunk/LayoutTests/ChangeLog (211472 => 211473) --- trunk/LayoutTests/ChangeLog 2017-02-01 07:55:44 UTC (rev 211472) +++ trunk/LayoutTests/ChangeLog 2017-02-01 10:00:32 UTC (rev 211473) @@ -1,3 +1,16 @@ +2017-02-01 Yusuke Suzuki + +Propagate networking errors correctly for import() operator +https://bugs.webkit.org/show_bug.cgi?id=167501 + +Reviewed by Ryosuke Niwa. + +* http/tests/security/mixedContent/import-insecure-script-in-iframe-expected.txt: Added. +* http/tests/security/mixedContent/import-insecure-script-in-
[webkit-changes] [211474] trunk/Source
Title: [211474] trunk/Source Revision 211474 Author utatane@gmail.com Date 2017-02-01 02:32:33 -0800 (Wed, 01 Feb 2017) Log Message Unreviewed, build fix for macOS and iOS ports * bindings/js/ModuleFetchFailureKind.h: Renamed from Source/ModuleFetchFailureKind.h. Modified Paths trunk/Source/WebCore/ChangeLog Added Paths trunk/Source/WebCore/bindings/js/ModuleFetchFailureKind.h Removed Paths trunk/Source/ModuleFetchFailureKind.h Diff Deleted: trunk/Source/ModuleFetchFailureKind.h (211473 => 211474) --- trunk/Source/ModuleFetchFailureKind.h 2017-02-01 10:00:32 UTC (rev 211473) +++ trunk/Source/ModuleFetchFailureKind.h 2017-02-01 10:32:33 UTC (rev 211474) @@ -1,36 +0,0 @@ -/* - * Copyright (C) 2017 Yusuke Suzuki - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - *notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - *notice, this list of conditions and the following disclaimer in the - *documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF - * THE POSSIBILITY OF SUCH DAMAGE. - */ - -#pragma once - -namespace WebCore { - -enum class ModuleFetchFailureKind { -WasErrored, -WasCanceled, -}; - -} // namespace WebCore - Modified: trunk/Source/WebCore/ChangeLog (211473 => 211474) --- trunk/Source/WebCore/ChangeLog 2017-02-01 10:00:32 UTC (rev 211473) +++ trunk/Source/WebCore/ChangeLog 2017-02-01 10:32:33 UTC (rev 211474) @@ -1,5 +1,11 @@ 2017-02-01 Yusuke Suzuki +Unreviewed, build fix for macOS and iOS ports + +* bindings/js/ModuleFetchFailureKind.h: Renamed from Source/ModuleFetchFailureKind.h. + +2017-02-01 Yusuke Suzuki + Propagate networking errors correctly for import() operator https://bugs.webkit.org/show_bug.cgi?id=167501 Copied: trunk/Source/WebCore/bindings/js/ModuleFetchFailureKind.h (from rev 211473, trunk/Source/ModuleFetchFailureKind.h) (0 => 211474) --- trunk/Source/WebCore/bindings/js/ModuleFetchFailureKind.h (rev 0) +++ trunk/Source/WebCore/bindings/js/ModuleFetchFailureKind.h 2017-02-01 10:32:33 UTC (rev 211474) @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2017 Yusuke Suzuki + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + * THE POSSIBILITY OF SUCH DAMAGE. + */ + +#pragma once + +namespace WebCore { + +enum class ModuleFetchFailureKind { +WasErrored, +WasCanceled, +}; + +} // namespace WebCore + ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211475] trunk/Source/WebCore
Title: [211475] trunk/Source/WebCore Revision 211475 Author utatane@gmail.com Date 2017-02-01 02:42:35 -0800 (Wed, 01 Feb 2017) Log Message Unreviewed, build fix for macOS and iOS ports, part 2 Annotate the function with static. * bindings/js/ScriptModuleLoader.cpp: (WebCore::rejectToPropagateNetworkError): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/js/ScriptModuleLoader.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (211474 => 211475) --- trunk/Source/WebCore/ChangeLog 2017-02-01 10:32:33 UTC (rev 211474) +++ trunk/Source/WebCore/ChangeLog 2017-02-01 10:42:35 UTC (rev 211475) @@ -1,5 +1,14 @@ 2017-02-01 Yusuke Suzuki +Unreviewed, build fix for macOS and iOS ports, part 2 + +Annotate the function with static. + +* bindings/js/ScriptModuleLoader.cpp: +(WebCore::rejectToPropagateNetworkError): + +2017-02-01 Yusuke Suzuki + Unreviewed, build fix for macOS and iOS ports * bindings/js/ModuleFetchFailureKind.h: Renamed from Source/ModuleFetchFailureKind.h. Modified: trunk/Source/WebCore/bindings/js/ScriptModuleLoader.cpp (211474 => 211475) --- trunk/Source/WebCore/bindings/js/ScriptModuleLoader.cpp 2017-02-01 10:32:33 UTC (rev 211474) +++ trunk/Source/WebCore/bindings/js/ScriptModuleLoader.cpp 2017-02-01 10:42:35 UTC (rev 211475) @@ -125,7 +125,7 @@ return jsPromise.promise(); } -void rejectToPropagateNetworkError(DeferredPromise& deferred, ModuleFetchFailureKind failureKind, ASCIILiteral message) +static void rejectToPropagateNetworkError(DeferredPromise& deferred, ModuleFetchFailureKind failureKind, ASCIILiteral message) { deferred.rejectWithCallback([&] (JSC::ExecState& state, JSDOMGlobalObject&) { // We annotate exception with special private symbol. It allows us to distinguish these errors from the user thrown ones. ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211476] trunk/Source/WebKit2
Title: [211476] trunk/Source/WebKit2 Revision 211476 Author o...@webkit.org Date 2017-02-01 02:46:10 -0800 (Wed, 01 Feb 2017) Log Message [Mac][cmake] Unreviewed speculative buildfix after r211403. https://bugs.webkit.org/show_bug.cgi?id=167601 * UIProcess/API/Cocoa/WKWebView.mm: Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm Diff Modified: trunk/Source/WebKit2/ChangeLog (211475 => 211476) --- trunk/Source/WebKit2/ChangeLog 2017-02-01 10:42:35 UTC (rev 211475) +++ trunk/Source/WebKit2/ChangeLog 2017-02-01 10:46:10 UTC (rev 211476) @@ -1,3 +1,10 @@ +2017-02-01 Csaba Osztrogonác + +[Mac][cmake] Unreviewed speculative buildfix after r211403. +https://bugs.webkit.org/show_bug.cgi?id=167601 + +* UIProcess/API/Cocoa/WKWebView.mm: + 2017-01-31 Antti Koivisto Teach cache coders to encode time_points Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (211475 => 211476) --- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm 2017-02-01 10:42:35 UTC (rev 211475) +++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm 2017-02-01 10:46:10 UTC (rev 211476) @@ -91,6 +91,7 @@ #import #import #import +#import #import #import #import ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211477] trunk/Tools
Title: [211477] trunk/Tools Revision 211477 Author calva...@igalia.com Date 2017-02-01 02:58:52 -0800 (Wed, 01 Feb 2017) Log Message [GTK] Install either libxfont1-dev or libxfont-dev as dependency https://bugs.webkit.org/show_bug.cgi?id=167498 Reviewed by Carlos Garcia Campos. Depending on the distro version you can need either libxfont1-dev or libfont-dev to build with jhbuild. * gtk/install-dependencies: Modified Paths trunk/Tools/ChangeLog trunk/Tools/gtk/install-dependencies Diff Modified: trunk/Tools/ChangeLog (211476 => 211477) --- trunk/Tools/ChangeLog 2017-02-01 10:46:10 UTC (rev 211476) +++ trunk/Tools/ChangeLog 2017-02-01 10:58:52 UTC (rev 211477) @@ -1,3 +1,15 @@ +2017-02-01 Xabier Rodriguez Calvar + +[GTK] Install either libxfont1-dev or libxfont-dev as dependency +https://bugs.webkit.org/show_bug.cgi?id=167498 + +Reviewed by Carlos Garcia Campos. + +Depending on the distro version you can need either libxfont1-dev +or libfont-dev to build with jhbuild. + +* gtk/install-dependencies: + 2017-01-31 Ryan Haddad Disable API test WebKit2.WKWebProcessPlugInRangeHandle Modified: trunk/Tools/gtk/install-dependencies (211476 => 211477) --- trunk/Tools/gtk/install-dependencies 2017-02-01 10:46:10 UTC (rev 211476) +++ trunk/Tools/gtk/install-dependencies 2017-02-01 10:58:52 UTC (rev 211477) @@ -188,7 +188,7 @@ libv4l-dev \ libxcb-composite0-dev \ libxcb-xfixes0-dev \ -libxfont-dev \ +$(aptIfElse libxfont1-dev libxfont-dev) \ libxkbfile-dev \ libtool-bin \ libudev-dev \ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211479] trunk
Title: [211479] trunk Revision 211479 Author utatane@gmail.com Date 2017-02-01 03:29:25 -0800 (Wed, 01 Feb 2017) Log Message ArityFixup should adjust SP first https://bugs.webkit.org/show_bug.cgi?id=167239 Reviewed by Michael Saboff. JSTests: Significantly large arity fixup reliably causes this crash. * stress/arity-fixup-should-not-touch-stack-area-below-sp.js: Added. Source/_javascript_Core: Arity fixup extends the stack and copy/fill the stack with the values. At that time, we accidentally read/write stack space below the stack pointer. As a result, we touch the area of the stack space below the x64 red zone. These areas are unsafe. OS may corrupt this space when constructing a signal stack. The Linux kernel could not populate the pages for this space and causes segmentation fault. This patch changes the stack pointer before performing the arity fixup. * jit/ThunkGenerators.cpp: (JSC::arityFixupGenerator): * llint/LowLevelInterpreter32_64.asm: * llint/LowLevelInterpreter64.asm: Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/jit/ThunkGenerators.cpp trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm Added Paths trunk/JSTests/stress/arity-fixup-should-not-touch-stack-area-below-sp.js Diff Modified: trunk/JSTests/ChangeLog (211478 => 211479) --- trunk/JSTests/ChangeLog 2017-02-01 10:59:17 UTC (rev 211478) +++ trunk/JSTests/ChangeLog 2017-02-01 11:29:25 UTC (rev 211479) @@ -1,3 +1,14 @@ +2017-02-01 Yusuke Suzuki + +ArityFixup should adjust SP first +https://bugs.webkit.org/show_bug.cgi?id=167239 + +Reviewed by Michael Saboff. + +Significantly large arity fixup reliably causes this crash. + +* stress/arity-fixup-should-not-touch-stack-area-below-sp.js: Added. + 2017-01-31 Filip Pizlo Move slow-running microbenchmarks out of JSTests/microbenchmarks Added: trunk/JSTests/stress/arity-fixup-should-not-touch-stack-area-below-sp.js (0 => 211479) --- trunk/JSTests/stress/arity-fixup-should-not-touch-stack-area-below-sp.js (rev 0) +++ trunk/JSTests/stress/arity-fixup-should-not-touch-stack-area-below-sp.js 2017-02-01 11:29:25 UTC (rev 211479) @@ -0,0 +1,5 @@ +var args = "y,".repeat(3); +var g = Function(args, "return 0"); +for (var i = 0; i < 1e3; ++i) { +g(); +} Modified: trunk/Source/_javascript_Core/ChangeLog (211478 => 211479) --- trunk/Source/_javascript_Core/ChangeLog 2017-02-01 10:59:17 UTC (rev 211478) +++ trunk/Source/_javascript_Core/ChangeLog 2017-02-01 11:29:25 UTC (rev 211479) @@ -1,3 +1,24 @@ +2017-02-01 Yusuke Suzuki + +ArityFixup should adjust SP first +https://bugs.webkit.org/show_bug.cgi?id=167239 + +Reviewed by Michael Saboff. + +Arity fixup extends the stack and copy/fill the stack with +the values. At that time, we accidentally read/write stack +space below the stack pointer. As a result, we touch the area +of the stack space below the x64 red zone. These areas are unsafe. +OS may corrupt this space when constructing a signal stack. +The Linux kernel could not populate the pages for this space +and causes segmentation fault. This patch changes the stack +pointer before performing the arity fixup. + +* jit/ThunkGenerators.cpp: +(JSC::arityFixupGenerator): +* llint/LowLevelInterpreter32_64.asm: +* llint/LowLevelInterpreter64.asm: + 2017-01-31 Filip Pizlo Make verifyEdge a RELEASE_ASSERT Modified: trunk/Source/_javascript_Core/jit/ThunkGenerators.cpp (211478 => 211479) --- trunk/Source/_javascript_Core/jit/ThunkGenerators.cpp 2017-02-01 10:59:17 UTC (rev 211478) +++ trunk/Source/_javascript_Core/jit/ThunkGenerators.cpp 2017-02-01 11:29:25 UTC (rev 211479) @@ -440,6 +440,15 @@ jit.neg64(JSInterfaceJIT::argumentGPR0); +// Adjust call frame register and stack pointer to account for missing args. +// We need to change the stack pointer first before performing copy/fill loops. +// This stack space below the stack pointer is considered unsed by OS. Therefore, +// OS may corrupt this space when constructing a signal stack. +jit.move(JSInterfaceJIT::argumentGPR0, extraTemp); +jit.lshift64(JSInterfaceJIT::TrustedImm32(3), extraTemp); +jit.addPtr(extraTemp, JSInterfaceJIT::callFrameRegister); +jit.addPtr(extraTemp, JSInterfaceJIT::stackPointerRegister); + // Move current frame down argumentGPR0 number of slots JSInterfaceJIT::Label copyLoop(jit.label()); jit.load64(JSInterfaceJIT::regT3, extraTemp); @@ -455,12 +464,6 @@ jit.addPtr(JSInterfaceJIT::TrustedImm32(8), JSInterfaceJIT::regT3); jit.branchAdd32(MacroAssembler::NonZero, JSInterfaceJIT::TrustedImm32(1), JSInterfaceJIT::argumentGPR2).linkTo(fillUndefinedLoop, &jit); -// Adjust cal
[webkit-changes] [211480] trunk/Source/WebKit2
Title: [211480] trunk/Source/WebKit2 Revision 211480 Author an...@apple.com Date 2017-02-01 05:38:49 -0800 (Wed, 01 Feb 2017) Log Message Load resources speculatively https://bugs.webkit.org/show_bug.cgi?id=167660 Reviewed by Andreas Kling. * NetworkProcess/cache/NetworkCache.cpp: (WebKit::NetworkCache::Cache::makeEntry): Factor to a function. (WebKit::NetworkCache::Cache::store): * NetworkProcess/cache/NetworkCache.h: * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: (WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad): Support loads where we don't have existing cache entry to validate. (WebKit::NetworkCache::SpeculativeLoad::didReceiveBuffer): Synthesize a NetworkCache::Entry if we can't store it. (WebKit::NetworkCache::SpeculativeLoad::didFinishLoading): (WebKit::NetworkCache::SpeculativeLoad::didFailLoading): (WebKit::NetworkCache::SpeculativeLoad::abort): (WebKit::NetworkCache::SpeculativeLoad::didComplete): * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: (WebKit::NetworkCache::constructRevalidationRequest): Make having existing cache entry optional. (WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage): Allow validation without validation headers (that is, normal load). (WebKit::NetworkCache::SpeculativeLoadManager::revalidateSubresource): Make having existing cache entry optional. (WebKit::NetworkCache::canRevalidate): Allow speculative loads without validation headers if we have high confidence that the page is going to request this resource again. This is based on the time span we have seen this resource being loaded on a given page and how much time has elapsed since we last loaded it. For example if we have seen the resource over the last 10 days we'll speculate that it will be required for the next 5 days. (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry): (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry): Deleted. * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h: * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp: (WebKit::NetworkCache::SubresourceInfo::encode): (WebKit::NetworkCache::SubresourceInfo::decode): Encode the firstSeen and lastSeen time stamps. (WebKit::NetworkCache::SubresourceInfo::SubresourceInfo): (WebKit::NetworkCache::makeSubresourceInfoVector): (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry): (WebKit::NetworkCache::SubresourcesEntry::updateSubresourceLoads): * NetworkProcess/cache/NetworkCacheSubresourcesEntry.h: (WebKit::NetworkCache::SubresourceInfo::lastSeen): (WebKit::NetworkCache::SubresourceInfo::firstSeen): (WebKit::NetworkCache::SubresourceInfo::setNonTransient): (WebKit::NetworkCache::SubresourceInfo::SubresourceInfo): Deleted. (WebKit::NetworkCache::SubresourceInfo::setTransient): Deleted. Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.h trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheSpeculativeLoad.h trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheSubresourcesEntry.h Diff Modified: trunk/Source/WebKit2/ChangeLog (211479 => 211480) --- trunk/Source/WebKit2/ChangeLog 2017-02-01 11:29:25 UTC (rev 211479) +++ trunk/Source/WebKit2/ChangeLog 2017-02-01 13:38:49 UTC (rev 211480) @@ -1,3 +1,74 @@ +2017-02-01 Antti Koivisto + +Load resources speculatively +https://bugs.webkit.org/show_bug.cgi?id=167660 + +Reviewed by Andreas Kling. + +* NetworkProcess/cache/NetworkCache.cpp: +(WebKit::NetworkCache::Cache::makeEntry): + +Factor to a function. + +(WebKit::NetworkCache::Cache::store): +* NetworkProcess/cache/NetworkCache.h: +* NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: +(WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad): + +Support loads where we don't have existing cache entry to validate. + +(WebKit::NetworkCache::SpeculativeLoad::didReceiveBuffer): + +Synthesize a NetworkCache::Entry if we can't store it. + +(WebKit::NetworkCache::SpeculativeLoad::didFinishLoading): +(WebKit::NetworkCache::SpeculativeLoad::didFailLoading): +(WebKit::NetworkCache::SpeculativeLoad::abort): +(WebKit::NetworkCache::SpeculativeLoad::didComplete): +* NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: +* NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: +(WebKit::NetworkCache::constructRevalidationRequest): + +Make havi
[webkit-changes] [211481] trunk
Title: [211481] trunk Revision 211481 Author tpop...@redhat.com Date 2017-02-01 06:14:36 -0800 (Wed, 01 Feb 2017) Log Message [GTK] Add an API to add a custom tab into the print dialog https://bugs.webkit.org/show_bug.cgi?id=151998 Reviewed by Carlos Garcia Campos. Source/WebKit2: Add a new create-custom-widget signal to the WebKitPrintOperation. The signal is emitted before the dialog is displayed and it gives an opportunity to embed a custom widget in the dialog. You can do so by creating a new WebKitPrintCustomWidget and returning it from the create-custom-widget signal handler. The WebKitPrintCustomWidget is emitting two signals: - update - emitted when the currently selected printer is changed, to be able to actualize the custom widget based on the current printer - apply - emitted when the dialog is closed, just before the printing will start, to be able e.g. to change content based on the custom widget state. * PlatformGTK.cmake: * UIProcess/API/gtk/WebKitAutocleanups.h: * UIProcess/API/gtk/WebKitPrintCustomWidget.cpp: Added. (webkitPrintCustomWidgetSetProperty): (webkit_print_custom_widget_class_init): (webkit_print_custom_widget_new): (webkit_print_custom_widget_get_widget): (webkit_print_custom_widget_get_title): (webkitPrintCustomWidgetEmitCustomWidgetApplySignal): (webkitPrintCustomWidgetEmitUpdateCustomWidgetSignal): * UIProcess/API/gtk/WebKitPrintCustomWidget.h: Added. * UIProcess/API/gtk/WebKitPrintCustomWidgetPrivate.h: Added. * UIProcess/API/gtk/WebKitPrintOperation.cpp: (webkitPrintOperationAccumulatorObjectHandled): (webkit_print_operation_class_init): (notifySelectedPrinterCallback): (webkitPrintOperationRunDialog): * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: * UIProcess/API/gtk/docs/webkit2gtk-4.0.types: * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: * UIProcess/API/gtk/webkit2.h: Tools: Add a new WebKitPrintOperation/custom-widget test in TestPrinting that is testing a newly added API. * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp: (testPrintCustomWidget): (beforeAll): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/PlatformGTK.cmake trunk/Source/WebKit2/UIProcess/API/gtk/WebKitAutocleanups.h trunk/Source/WebKit2/UIProcess/API/gtk/WebKitPrintOperation.cpp trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-4.0.types trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-docs.sgml trunk/Source/WebKit2/UIProcess/API/gtk/webkit2.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp Added Paths trunk/Source/WebKit2/UIProcess/API/gtk/WebKitPrintCustomWidget.cpp trunk/Source/WebKit2/UIProcess/API/gtk/WebKitPrintCustomWidget.h trunk/Source/WebKit2/UIProcess/API/gtk/WebKitPrintCustomWidgetPrivate.h Diff Modified: trunk/Source/WebKit2/ChangeLog (211480 => 211481) --- trunk/Source/WebKit2/ChangeLog 2017-02-01 13:38:49 UTC (rev 211480) +++ trunk/Source/WebKit2/ChangeLog 2017-02-01 14:14:36 UTC (rev 211481) @@ -1,3 +1,45 @@ +2017-02-01 Tomas Popela + +[GTK] Add an API to add a custom tab into the print dialog +https://bugs.webkit.org/show_bug.cgi?id=151998 + +Reviewed by Carlos Garcia Campos. + +Add a new create-custom-widget signal to the WebKitPrintOperation. The +signal is emitted before the dialog is displayed and it gives an +opportunity to embed a custom widget in the dialog. You can do so by +creating a new WebKitPrintCustomWidget and returning it from the +create-custom-widget signal handler. The WebKitPrintCustomWidget is +emitting two signals: + - update - emitted when the currently selected printer is changed, + to be able to actualize the custom widget based on the + current printer + - apply - emitted when the dialog is closed, just before the +printing will start, to be able e.g. to change content +based on the custom widget state. + +* PlatformGTK.cmake: +* UIProcess/API/gtk/WebKitAutocleanups.h: +* UIProcess/API/gtk/WebKitPrintCustomWidget.cpp: Added. +(webkitPrintCustomWidgetSetProperty): +(webkit_print_custom_widget_class_init): +(webkit_print_custom_widget_new): +(webkit_print_custom_widget_get_widget): +(webkit_print_custom_widget_get_title): +(webkitPrintCustomWidgetEmitCustomWidgetApplySignal): +(webkitPrintCustomWidgetEmitUpdateCustomWidgetSignal): +* UIProcess/API/gtk/WebKitPrintCustomWidget.h: Added. +* UIProcess/API/gtk/WebKitPrintCustomWidgetPrivate.h: Added. +* UIProcess/API/gtk/WebKitPrintOperation.cpp: +(webkitPrintOperationAccumulatorObjectHandled): +(webkit_print_operation_class_init): +(notifySelectedPrinterCallback): +(webkitPrintOperationRunDi
[webkit-changes] [211482] trunk/Source
Title: [211482] trunk/Source Revision 211482 Author akl...@apple.com Date 2017-02-01 06:55:00 -0800 (Wed, 01 Feb 2017) Log Message Implement the alwaysRunsAtBackgroundPriority WK2 setting using thread QoS. Reviewed by Antti Koivisto. Source/bmalloc: Support changing the QoS level of the scavenger thread asynchronously through a request variable. This is not the most elegant thing in the world, but since threads are only allowed to change their own QoS class, our options are limited. * bmalloc/Heap.cpp: (bmalloc::Heap::concurrentScavenge): * bmalloc/Heap.h: (bmalloc::Heap::takeRequestedScavengerThreadQOSClass): (bmalloc::Heap::setScavengerThreadQOSClass): * bmalloc/bmalloc.h: (bmalloc::api::setScavengerThreadQOSClass): Source/WebKit2: Remove the old ProcessThrottlerClient implementation of alwaysRunsAtBackgroundPriority and replace it with WTF::setGlobalMaxQOSClass(). If the setting is enabled, it's passed over to each WK2 child process along with its bootstrap parameter, and we notify WTF in XPCServiceInitializer(), before anything too threading related happens. * Platform/IPC/Connection.cpp: (IPC::Connection::processIncomingMessage): * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: (WebKit::XPCServiceInitializer): * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm: (WebKit::XPCServiceInitializerDelegate::getExtraInitializationData): * UIProcess/API/APIProcessPoolConfiguration.h: * UIProcess/ChildProcessProxy.cpp: (WebKit::ChildProcessProxy::ChildProcessProxy): (WebKit::ChildProcessProxy::getLaunchOptions): * UIProcess/ChildProcessProxy.h: * UIProcess/Databases/DatabaseProcessProxy.cpp: (WebKit::DatabaseProcessProxy::DatabaseProcessProxy): * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::NetworkProcessProxy): (WebKit::NetworkProcessProxy::alwaysRunsAtBackgroundPriority): Deleted. * UIProcess/Network/NetworkProcessProxy.h: * UIProcess/ProcessThrottler.cpp: (WebKit::ProcessThrottler::assertionState): * UIProcess/ProcessThrottlerClient.h: * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::WebProcessProxy): (WebKit::WebProcessProxy::alwaysRunsAtBackgroundPriority): Deleted. * UIProcess/WebProcessProxy.h: Source/WTF: Add a new mechanism for overriding the max thread QoS level globally: void setGlobalMaxQOSClass(qos_class_t) qos_class_t adjustedQOSClass(qos_class_t) The QoS cap applies to all newly created threads, threads that try to override their QoS class manually, and also passed down to bmalloc. * wtf/Threading.cpp: (WTF::setCurrentThreadIsUserInteractive): (WTF::setCurrentThreadIsUserInitiated): (WTF::setGlobalMaxQOSClass): (WTF::adjustedQOSClass): * wtf/Threading.h: * wtf/ThreadingPthreads.cpp: (WTF::createThreadInternal): * wtf/cocoa/WorkQueueCocoa.cpp: (WTF::dispatchQOSClass): Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/Threading.cpp trunk/Source/WTF/wtf/Threading.h trunk/Source/WTF/wtf/ThreadingPthreads.cpp trunk/Source/WTF/wtf/cocoa/WorkQueueCocoa.cpp trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/Platform/IPC/Connection.cpp trunk/Source/WebKit2/Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h trunk/Source/WebKit2/Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm trunk/Source/WebKit2/UIProcess/ChildProcessProxy.cpp trunk/Source/WebKit2/UIProcess/ChildProcessProxy.h trunk/Source/WebKit2/UIProcess/Databases/DatabaseProcessProxy.cpp trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp trunk/Source/WebKit2/UIProcess/Network/NetworkProcessProxy.h trunk/Source/WebKit2/UIProcess/ProcessThrottler.cpp trunk/Source/WebKit2/UIProcess/ProcessThrottlerClient.h trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp trunk/Source/WebKit2/UIProcess/WebProcessProxy.h trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/bmalloc/Heap.cpp trunk/Source/bmalloc/bmalloc/Heap.h trunk/Source/bmalloc/bmalloc/bmalloc.h Diff Modified: trunk/Source/WTF/ChangeLog (211481 => 211482) --- trunk/Source/WTF/ChangeLog 2017-02-01 14:14:36 UTC (rev 211481) +++ trunk/Source/WTF/ChangeLog 2017-02-01 14:55:00 UTC (rev 211482) @@ -1,3 +1,30 @@ +2017-02-01 Andreas Kling + +Implement the alwaysRunsAtBackgroundPriority WK2 setting using thread QoS. + + + +Reviewed by Antti Koivisto. + +Add a new mechanism for overriding the max thread QoS level globally: + +void setGlobalMaxQOSClass(qos_class_t) +qos_class_t adjustedQOSClass(qos_class_t) + +The QoS cap applies to all newly created threads, threads that try to override +their QoS class manually, and also passed down to bmalloc. + +* wtf/Threading.cpp: +(WTF::setCurrentThreadIsUserInteractive): +(WTF::setCurrentThreadIsUserInitiated): +(WTF::setGlobalMaxQOSClass): +(WTF::adjustedQOSClass): +* wtf/Threading.h: +* wtf/ThreadingPthreads.cpp: +(WTF::createThreadInternal): +* wtf/c
[webkit-changes] [211483] trunk/Tools
Title: [211483] trunk/Tools Revision 211483 Author tpop...@redhat.com Date 2017-02-01 07:28:08 -0800 (Wed, 01 Feb 2017) Log Message Unreviewed. Fix coding style in MiniBrowser * MiniBrowser/gtk/BrowserWindow.c: (editingCommandCallback): (insertImageCommandCallback): (insertLinkCommandCallback): Modified Paths trunk/Tools/ChangeLog trunk/Tools/MiniBrowser/gtk/BrowserWindow.c Diff Modified: trunk/Tools/ChangeLog (211482 => 211483) --- trunk/Tools/ChangeLog 2017-02-01 14:55:00 UTC (rev 211482) +++ trunk/Tools/ChangeLog 2017-02-01 15:28:08 UTC (rev 211483) @@ -1,5 +1,14 @@ 2017-02-01 Tomas Popela +Unreviewed. Fix coding style in MiniBrowser + +* MiniBrowser/gtk/BrowserWindow.c: +(editingCommandCallback): +(insertImageCommandCallback): +(insertLinkCommandCallback): + +2017-02-01 Tomas Popela + [GTK] Add an API to add a custom tab into the print dialog https://bugs.webkit.org/show_bug.cgi?id=151998 Modified: trunk/Tools/MiniBrowser/gtk/BrowserWindow.c (211482 => 211483) --- trunk/Tools/MiniBrowser/gtk/BrowserWindow.c 2017-02-01 14:55:00 UTC (rev 211482) +++ trunk/Tools/MiniBrowser/gtk/BrowserWindow.c 2017-02-01 15:28:08 UTC (rev 211483) @@ -562,13 +562,14 @@ return TRUE; } -static void editingCommandCallback(GtkWidget*widget, BrowserWindow *window) + +static void editingCommandCallback(GtkWidget *widget, BrowserWindow *window) { WebKitWebView *webView = browser_tab_get_web_view(window->activeTab); webkit_web_view_execute_editing_command(webView, gtk_widget_get_name(widget)); } -static void insertImageCommandCallback(GtkWidget*widget, BrowserWindow *window) +static void insertImageCommandCallback(GtkWidget *widget, BrowserWindow *window) { GtkWidget *fileChooser = gtk_file_chooser_dialog_new("Insert Image", GTK_WINDOW(window), GTK_FILE_CHOOSER_ACTION_OPEN, "Cancel", GTK_RESPONSE_CANCEL, "Open", GTK_RESPONSE_ACCEPT, NULL); @@ -590,7 +591,7 @@ gtk_widget_destroy(fileChooser); } -static void insertLinkCommandCallback(GtkWidget*widget, BrowserWindow *window) +static void insertLinkCommandCallback(GtkWidget *widget, BrowserWindow *window) { GtkWidget *dialog = gtk_dialog_new_with_buttons("Insert Link", GTK_WINDOW(window), GTK_DIALOG_MODAL, "Insert", GTK_RESPONSE_ACCEPT, NULL); gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_ACCEPT); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211484] trunk
Title: [211484] trunk Revision 211484 Author commit-qu...@webkit.org Date 2017-02-01 08:17:52 -0800 (Wed, 01 Feb 2017) Log Message [Readable Streams API] Implement ReadableByteStreamController pull() https://bugs.webkit.org/show_bug.cgi?id=167593 Patch by Romain Bellessort on 2017-02-01 Reviewed by Youenn Fablet. Source/WebCore: Implemented pull() method for ReadableByteStreamController. Also updated pendingPullIntos attribute, which was a more complex object than necessary (an array is enough). Added 2 tests that allow covering most of new code. Code not yet tested will become reachable as the rest of the spec is implemented (new tests will then be added). * Modules/streams/ReadableByteStreamInternals.js: (privateInitializeReadableByteStreamController): Updated pendingPullIntos. (readableByteStreamControllerCancel): Updated pendingPullIntos. (readableByteStreamControllerClose): Updated pendingPullIntos. (readableByteStreamControllerHandleQueueDrain): Added. (readableByteStreamControllerPull): Added. LayoutTests: Added 2 tests that allow covering most of new code. Code not yet tested will become reachable as the rest of the spec is implemented (new tests will then be added). * streams/readable-byte-stream-controller-expected.txt: * streams/readable-byte-stream-controller.js: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/streams/readable-byte-stream-controller-expected.txt trunk/LayoutTests/streams/readable-byte-stream-controller.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/streams/ReadableByteStreamInternals.js Diff Modified: trunk/LayoutTests/ChangeLog (211483 => 211484) --- trunk/LayoutTests/ChangeLog 2017-02-01 15:28:08 UTC (rev 211483) +++ trunk/LayoutTests/ChangeLog 2017-02-01 16:17:52 UTC (rev 211484) @@ -1,3 +1,17 @@ +2017-02-01 Romain Bellessort + +[Readable Streams API] Implement ReadableByteStreamController pull() +https://bugs.webkit.org/show_bug.cgi?id=167593 + +Reviewed by Youenn Fablet. + +Added 2 tests that allow covering most of new code. Code not yet tested will +become reachable as the rest of the spec is implemented (new tests will then +be added). + +* streams/readable-byte-stream-controller-expected.txt: +* streams/readable-byte-stream-controller.js: + 2017-02-01 Yusuke Suzuki Propagate networking errors correctly for import() operator Modified: trunk/LayoutTests/streams/readable-byte-stream-controller-expected.txt (211483 => 211484) --- trunk/LayoutTests/streams/readable-byte-stream-controller-expected.txt 2017-02-01 15:28:08 UTC (rev 211483) +++ trunk/LayoutTests/streams/readable-byte-stream-controller-expected.txt 2017-02-01 16:17:52 UTC (rev 211484) @@ -9,6 +9,8 @@ PASS Calling close() after calling error() should throw a TypeError PASS Calling read() on a reader associated to a controller that has been errored should fail with provided error PASS Calling read() on a reader associated to a controller that has been closed should not be rejected +PASS Pending reading promise should be rejected if controller is errored (case where autoAllocateChunkSize is undefined) +FAIL Pending reading promise should be rejected if controller is errored (case where autoAllocateChunkSize is specified) Can't find private variable: @Uint8Array FAIL Calling read() after a chunk has been enqueued should result in obtaining said chunk ReadableByteStreamController enqueue() is not implemented PASS By default initial value of desiredSize should be 1 PASS Calling cancel() on a readable ReadableStream that is not locked to a reader should return a promise whose fulfillment handler returns undefined @@ -25,6 +27,8 @@ PASS Calling close() after calling error() should throw a TypeError PASS Calling read() on a reader associated to a controller that has been errored should fail with provided error PASS Calling read() on a reader associated to a controller that has been closed should not be rejected +PASS Pending reading promise should be rejected if controller is errored (case where autoAllocateChunkSize is undefined) +FAIL Pending reading promise should be rejected if controller is errored (case where autoAllocateChunkSize is specified) Can't find private variable: @Uint8Array FAIL Calling read() after a chunk has been enqueued should result in obtaining said chunk ReadableByteStreamController enqueue() is not implemented PASS By default initial value of desiredSize should be 1 PASS Calling cancel() on a readable ReadableStream that is not locked to a reader should return a promise whose fulfillment handler returns undefined Modified: trunk/LayoutTests/streams/readable-byte-stream-controller.js (211483 => 211484) --- trunk/LayoutTests/streams/readable-byte-stream-controller.js 2017-02-01 15:28:08 UTC (rev 211483) +++ trunk/LayoutTests/streams/readable-byte-stream-controller.js 2017-02-01 16:17:52 UTC (rev 211484) @@ -179,6 +179,41 @@ );
[webkit-changes] [211486] trunk/Source/JavaScriptCore
Title: [211486] trunk/Source/_javascript_Core Revision 211486 Author commit-qu...@webkit.org Date 2017-02-01 09:34:00 -0800 (Wed, 01 Feb 2017) Log Message Web Inspector: Use guaranteed RunLoop instead of RunLoop::current for dispatching inspector GC event https://bugs.webkit.org/show_bug.cgi?id=167683 Patch by Joseph Pecoraro on 2017-02-01 Reviewed by Timothy Hatcher. * inspector/agents/InspectorHeapAgent.cpp: (Inspector::SendGarbageCollectionEventsTask::SendGarbageCollectionEventsTask): Use RunLoop::main instead of RunLoop::current which may go away. * runtime/InitializeThreading.cpp: (JSC::initializeThreading): Ensure RunLoop::main is initialized when using JSC APIs. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/inspector/agents/InspectorHeapAgent.cpp trunk/Source/_javascript_Core/runtime/InitializeThreading.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (211485 => 211486) --- trunk/Source/_javascript_Core/ChangeLog 2017-02-01 17:33:56 UTC (rev 211485) +++ trunk/Source/_javascript_Core/ChangeLog 2017-02-01 17:34:00 UTC (rev 211486) @@ -1,3 +1,19 @@ +2017-02-01 Joseph Pecoraro + +Web Inspector: Use guaranteed RunLoop instead of RunLoop::current for dispatching inspector GC event +https://bugs.webkit.org/show_bug.cgi?id=167683 + + +Reviewed by Timothy Hatcher. + +* inspector/agents/InspectorHeapAgent.cpp: +(Inspector::SendGarbageCollectionEventsTask::SendGarbageCollectionEventsTask): +Use RunLoop::main instead of RunLoop::current which may go away. + +* runtime/InitializeThreading.cpp: +(JSC::initializeThreading): +Ensure RunLoop::main is initialized when using JSC APIs. + 2017-02-01 Yusuke Suzuki ArityFixup should adjust SP first Modified: trunk/Source/_javascript_Core/inspector/agents/InspectorHeapAgent.cpp (211485 => 211486) --- trunk/Source/_javascript_Core/inspector/agents/InspectorHeapAgent.cpp 2017-02-01 17:33:56 UTC (rev 211485) +++ trunk/Source/_javascript_Core/inspector/agents/InspectorHeapAgent.cpp 2017-02-01 17:34:00 UTC (rev 211486) @@ -61,7 +61,7 @@ SendGarbageCollectionEventsTask::SendGarbageCollectionEventsTask(HeapFrontendDispatcher& frontendDispatcher) : m_frontendDispatcher(frontendDispatcher) -, m_timer(RunLoop::current(), this, &SendGarbageCollectionEventsTask::timerFired) +, m_timer(RunLoop::main(), this, &SendGarbageCollectionEventsTask::timerFired) { } Modified: trunk/Source/_javascript_Core/runtime/InitializeThreading.cpp (211485 => 211486) --- trunk/Source/_javascript_Core/runtime/InitializeThreading.cpp 2017-02-01 17:33:56 UTC (rev 211485) +++ trunk/Source/_javascript_Core/runtime/InitializeThreading.cpp 2017-02-01 17:34:00 UTC (rev 211486) @@ -32,17 +32,18 @@ #include "ExecutableAllocator.h" #include "Heap.h" #include "HeapStatistics.h" -#include "Options.h" #include "Identifier.h" #include "JSDateMath.h" #include "JSGlobalObject.h" #include "JSLock.h" #include "LLIntData.h" +#include "Options.h" #include "StructureIDTable.h" #include "SuperSampler.h" #include "WriteBarrier.h" #include #include +#include #include #include #include @@ -59,6 +60,7 @@ WTF::double_conversion::initialize(); WTF::initializeThreading(); WTF::initializeGCThreads(); +RunLoop::initializeMainRunLoop(); Options::initialize(); if (Options::recordGCPauseTimes()) HeapStatistics::initialize(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211485] trunk/Source/WebInspectorUI
Title: [211485] trunk/Source/WebInspectorUI Revision 211485 Author commit-qu...@webkit.org Date 2017-02-01 09:33:56 -0800 (Wed, 01 Feb 2017) Log Message Web Inspector: Remove keyboard shortcut to close tab - does not match expectations https://bugs.webkit.org/show_bug.cgi?id=167672 Patch by Joseph Pecoraro on 2017-02-01 Reviewed by Timothy Hatcher. * UserInterface/Views/TabBrowser.js: (WebInspector.TabBrowser): Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Views/TabBrowser.js Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (211484 => 211485) --- trunk/Source/WebInspectorUI/ChangeLog 2017-02-01 16:17:52 UTC (rev 211484) +++ trunk/Source/WebInspectorUI/ChangeLog 2017-02-01 17:33:56 UTC (rev 211485) @@ -1,3 +1,13 @@ +2017-02-01 Joseph Pecoraro + +Web Inspector: Remove keyboard shortcut to close tab - does not match expectations +https://bugs.webkit.org/show_bug.cgi?id=167672 + +Reviewed by Timothy Hatcher. + +* UserInterface/Views/TabBrowser.js: +(WebInspector.TabBrowser): + 2017-01-31 Devin Rousso Web Inspector: Tooltip text should not end in a period Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TabBrowser.js (211484 => 211485) --- trunk/Source/WebInspectorUI/UserInterface/Views/TabBrowser.js 2017-02-01 16:17:52 UTC (rev 211484) +++ trunk/Source/WebInspectorUI/UserInterface/Views/TabBrowser.js 2017-02-01 17:33:56 UTC (rev 211485) @@ -53,14 +53,7 @@ let showNextTab = () => { this._showNextTab(); }; let showPreviousTab = () => { this._showPreviousTab(); }; -let closeCurrentTab = () => { -let selectedTabBarItem = this._tabBar.selectedTabBarItem; -if (this._tabBar.tabBarItems.length > 3 || !selectedTabBarItem.isDefaultTab) -this._tabBar.removeTabBarItem(selectedTabBarItem); -}; -this._closeCurrentTabKeyboardShortuct = new WebInspector.KeyboardShortcut(WebInspector.KeyboardShortcut.Modifier.CommandOrControl | WebInspector.KeyboardShortcut.Modifier.Shift, "W", closeCurrentTab); - this._showNextTabKeyboardShortcut1 = new WebInspector.KeyboardShortcut(WebInspector.KeyboardShortcut.Modifier.CommandOrControl | WebInspector.KeyboardShortcut.Modifier.Shift, WebInspector.KeyboardShortcut.Key.RightCurlyBrace, showNextTab); this._showPreviousTabKeyboardShortcut1 = new WebInspector.KeyboardShortcut(WebInspector.KeyboardShortcut.Modifier.CommandOrControl | WebInspector.KeyboardShortcut.Modifier.Shift, WebInspector.KeyboardShortcut.Key.LeftCurlyBrace, showPreviousTab); this._showNextTabKeyboardShortcut2 = new WebInspector.KeyboardShortcut(WebInspector.KeyboardShortcut.Modifier.Control, WebInspector.KeyboardShortcut.Key.Tab, showNextTab); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211487] trunk/Source/WebCore
Title: [211487] trunk/Source/WebCore Revision 211487 Author timo...@hatcher.name Date 2017-02-01 09:37:03 -0800 (Wed, 01 Feb 2017) Log Message HTMLMediaElement.h fails to build when ENABLE(MEDIA_CONTROLS_SCRIPT) is false https://bugs.webkit.org/show_bug.cgi?id=167689 Reviewed by Joseph Pecoraro. * html/HTMLMediaElement.h: Move mediaControlsHost() into the ENABLE(MEDIA_CONTROLS_SCRIPT) block that is just above it to match m_mediaControlsHost. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLMediaElement.h Property Changed trunk/Source/WebCore/html/HTMLMediaElement.h Diff Modified: trunk/Source/WebCore/ChangeLog (211486 => 211487) --- trunk/Source/WebCore/ChangeLog 2017-02-01 17:34:00 UTC (rev 211486) +++ trunk/Source/WebCore/ChangeLog 2017-02-01 17:37:03 UTC (rev 211487) @@ -1,3 +1,13 @@ +2017-02-01 Timothy Hatcher + +HTMLMediaElement.h fails to build when ENABLE(MEDIA_CONTROLS_SCRIPT) is false +https://bugs.webkit.org/show_bug.cgi?id=167689 + +Reviewed by Joseph Pecoraro. + +* html/HTMLMediaElement.h: Move mediaControlsHost() into the ENABLE(MEDIA_CONTROLS_SCRIPT) +block that is just above it to match m_mediaControlsHost. + 2017-02-01 Romain Bellessort [Readable Streams API] Implement ReadableByteStreamController pull() Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (211486 => 211487) --- trunk/Source/WebCore/html/HTMLMediaElement.h 2017-02-01 17:34:00 UTC (rev 211486) +++ trunk/Source/WebCore/html/HTMLMediaElement.h 2017-02-01 17:37:03 UTC (rev 211487) @@ -457,9 +457,9 @@ void pageScaleFactorChanged(); void userInterfaceLayoutDirectionChanged(); WEBCORE_EXPORT String getCurrentMediaControlsStatus(); -#endif MediaControlsHost* mediaControlsHost() { return m_mediaControlsHost.get(); } +#endif bool isDisablingSleep() const { return m_sleepDisabler.get(); } Property changes on: trunk/Source/WebCore/html/HTMLMediaElement.h ___ Added: svn:executable +* \ No newline at end of property ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211488] trunk/Source/WebCore
Title: [211488] trunk/Source/WebCore Revision 211488 Author timo...@hatcher.name Date 2017-02-01 09:46:12 -0800 (Wed, 01 Feb 2017) Log Message AXObjectCache is missing two functions at link time when !HAVE(ACCESSIBILITY) https://bugs.webkit.org/show_bug.cgi?id=167691 Reviewed by Chris Fleizach. * accessibility/AXObjectCache.h: (WebCore::AXObjectCache::recomputeDeferredIsIgnored): Added empty stub. (WebCore::AXObjectCache::performDeferredIsIgnoredChange): Added empty stub. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/AXObjectCache.h Property Changed trunk/Source/WebCore/accessibility/AXObjectCache.h Diff Modified: trunk/Source/WebCore/ChangeLog (211487 => 211488) --- trunk/Source/WebCore/ChangeLog 2017-02-01 17:37:03 UTC (rev 211487) +++ trunk/Source/WebCore/ChangeLog 2017-02-01 17:46:12 UTC (rev 211488) @@ -1,5 +1,16 @@ 2017-02-01 Timothy Hatcher +AXObjectCache is missing two functions at link time when !HAVE(ACCESSIBILITY) +https://bugs.webkit.org/show_bug.cgi?id=167691 + +Reviewed by Chris Fleizach. + +* accessibility/AXObjectCache.h: +(WebCore::AXObjectCache::recomputeDeferredIsIgnored): Added empty stub. +(WebCore::AXObjectCache::performDeferredIsIgnoredChange): Added empty stub. + +2017-02-01 Timothy Hatcher + HTMLMediaElement.h fails to build when ENABLE(MEDIA_CONTROLS_SCRIPT) is false https://bugs.webkit.org/show_bug.cgi?id=167689 Modified: trunk/Source/WebCore/accessibility/AXObjectCache.h (211487 => 211488) --- trunk/Source/WebCore/accessibility/AXObjectCache.h 2017-02-01 17:37:03 UTC (rev 211487) +++ trunk/Source/WebCore/accessibility/AXObjectCache.h 2017-02-01 17:46:12 UTC (rev 211488) @@ -490,6 +490,8 @@ inline void AXObjectCache::handleScrollbarUpdate(ScrollView*) { } inline void AXObjectCache::handleAttributeChanged(const QualifiedName&, Element*) { } inline void AXObjectCache::recomputeIsIgnored(RenderObject*) { } +inline void AXObjectCache::recomputeDeferredIsIgnored(RenderBlock&) { } +inline void AXObjectCache::performDeferredIsIgnoredChange() { } inline void AXObjectCache::handleScrolledToAnchor(const Node*) { } inline void AXObjectCache::postTextStateChangeNotification(Node*, const AXTextStateChangeIntent&, const VisibleSelection&) { } inline void AXObjectCache::postTextStateChangeNotification(Node*, AXTextEditType, const String&, const VisiblePosition&) { } Property changes on: trunk/Source/WebCore/accessibility/AXObjectCache.h ___ Added: svn:executable +* \ No newline at end of property ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211489] trunk/LayoutTests
Title: [211489] trunk/LayoutTests Revision 211489 Author ryanhad...@apple.com Date 2017-02-01 09:54:05 -0800 (Wed, 01 Feb 2017) Log Message ios-simulator TestExpectations gardening. Unreviewed test gardening. * platform/ios-simulator/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-simulator/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (211488 => 211489) --- trunk/LayoutTests/ChangeLog 2017-02-01 17:46:12 UTC (rev 211488) +++ trunk/LayoutTests/ChangeLog 2017-02-01 17:54:05 UTC (rev 211489) @@ -1,3 +1,11 @@ +2017-02-01 Ryan Haddad + +ios-simulator TestExpectations gardening. + +Unreviewed test gardening. + +* platform/ios-simulator/TestExpectations: + 2017-02-01 Romain Bellessort [Readable Streams API] Implement ReadableByteStreamController pull() Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (211488 => 211489) --- trunk/LayoutTests/platform/ios-simulator/TestExpectations 2017-02-01 17:46:12 UTC (rev 211488) +++ trunk/LayoutTests/platform/ios-simulator/TestExpectations 2017-02-01 17:54:05 UTC (rev 211489) @@ -2839,3 +2839,6 @@ webkit.org/b/167376 imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/location-protocol-setter-non-broken.html [ Pass Failure ] webkit.org/b/167211 imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/location-protocol-setter-non-broken-weird.html [ Pass Failure ] + +webkit.org/b/167620 compositing/geometry/fixed-in-composited.html [ Failure ] +webkit.org/b/167619 css3/filters/backdrop/dynamic-with-clip-path.html [ ImageOnlyFailure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211490] tags/Safari-604.1.6/
Title: [211490] tags/Safari-604.1.6/ Revision 211490 Author matthew_han...@apple.com Date 2017-02-01 10:08:57 -0800 (Wed, 01 Feb 2017) Log Message Tag Safari-604.1.6. Added Paths tags/Safari-604.1.6/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [211491] trunk
Title: [211491] trunk Revision 211491 Author n_w...@apple.com Date 2017-02-01 10:12:08 -0800 (Wed, 01 Feb 2017) Log Message AX: Incorrect range from index and length in text controls when there are newlines https://bugs.webkit.org/show_bug.cgi?id=167677 Reviewed by Chris Fleizach. Source/WebCore: When there are newlines in text controls, the VisiblePosition that is created from the index could be wrong. Because the index doesn't include the information regarding a position's affinity. Fixed it by using CharacterOffset instead, since it doesn't require that information. Test: accessibility/mac/range-for-contenteditable-newline.html * accessibility/AXObjectCache.cpp: (WebCore::AXObjectCache::traverseToOffsetInRange): (WebCore::AXObjectCache::nextCharacterOffset): (WebCore::AXObjectCache::characterOffsetForIndex): LayoutTests: * accessibility/mac/range-for-contenteditable-newline-expected.txt: Added. * accessibility/mac/range-for-contenteditable-newline.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/AXObjectCache.cpp Added Paths trunk/LayoutTests/accessibility/mac/range-for-contenteditable-newline-expected.txt trunk/LayoutTests/accessibility/mac/range-for-contenteditable-newline.html Diff Modified: trunk/LayoutTests/ChangeLog (211490 => 211491) --- trunk/LayoutTests/ChangeLog 2017-02-01 18:08:57 UTC (rev 211490) +++ trunk/LayoutTests/ChangeLog 2017-02-01 18:12:08 UTC (rev 211491) @@ -1,3 +1,14 @@ +2017-02-01 Nan Wang + +AX: Incorrect range from index and length in text controls when there are newlines +https://bugs.webkit.org/show_bug.cgi?id=167677 + + +Reviewed by Chris Fleizach. + +* accessibility/mac/range-for-contenteditable-newline-expected.txt: Added. +* accessibility/mac/range-for-contenteditable-newline.html: Added. + 2017-02-01 Ryan Haddad ios-simulator TestExpectations gardening. Added: trunk/LayoutTests/accessibility/mac/range-for-contenteditable-newline-expected.txt (0 => 211491) --- trunk/LayoutTests/accessibility/mac/range-for-contenteditable-newline-expected.txt (rev 0) +++ trunk/LayoutTests/accessibility/mac/range-for-contenteditable-newline-expected.txt 2017-02-01 18:12:08 UTC (rev 211491) @@ -0,0 +1,25 @@ +some +hello world +test + +abc + + + +def +This tests that when there are newline characters within text controls, we can get the correct text range from index and length. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS textSome is 'some' +PASS textHello is 'hello' +PASS textWorld is 'world' +PASS textTest is 'test' +PASS textareaTextHello is 'hello' +PASS textareaTextWorld is 'world' +PASS textDEF is 'def' +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/accessibility/mac/range-for-contenteditable-newline.html (0 => 211491) --- trunk/LayoutTests/accessibility/mac/range-for-contenteditable-newline.html (rev 0) +++ trunk/LayoutTests/accessibility/mac/range-for-contenteditable-newline.html 2017-02-01 18:12:08 UTC (rev 211491) @@ -0,0 +1,51 @@ + + + + + + +++some+ +hello worldtestabcdef