[webkit-changes] [236538] trunk/Source/JavaScriptCore
Title: [236538] trunk/Source/_javascript_Core Revision 236538 Author mark@apple.com Date 2018-09-26 21:36:42 -0700 (Wed, 26 Sep 2018) Log Message Options::useSeparatedWXHeap() should always be false when ENABLE(FAST_JIT_PERMISSIONS) && CPU(ARM64E). https://bugs.webkit.org/show_bug.cgi?id=190022 Reviewed by Saam Barati. * jit/ExecutableAllocator.cpp: (JSC::FixedVMPoolExecutableAllocator::FixedVMPoolExecutableAllocator): (JSC::FixedVMPoolExecutableAllocator::initializeSeparatedWXHeaps): * jit/ExecutableAllocator.h: (JSC::performJITMemcpy): * runtime/Options.cpp: (JSC::recomputeDependentOptions): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/jit/ExecutableAllocator.cpp trunk/Source/_javascript_Core/jit/ExecutableAllocator.h trunk/Source/_javascript_Core/runtime/Options.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (236537 => 236538) --- trunk/Source/_javascript_Core/ChangeLog 2018-09-27 02:00:32 UTC (rev 236537) +++ trunk/Source/_javascript_Core/ChangeLog 2018-09-27 04:36:42 UTC (rev 236538) @@ -1,5 +1,21 @@ 2018-09-26 Mark Lam +Options::useSeparatedWXHeap() should always be false when ENABLE(FAST_JIT_PERMISSIONS) && CPU(ARM64E). +https://bugs.webkit.org/show_bug.cgi?id=190022 + + +Reviewed by Saam Barati. + +* jit/ExecutableAllocator.cpp: +(JSC::FixedVMPoolExecutableAllocator::FixedVMPoolExecutableAllocator): +(JSC::FixedVMPoolExecutableAllocator::initializeSeparatedWXHeaps): +* jit/ExecutableAllocator.h: +(JSC::performJITMemcpy): +* runtime/Options.cpp: +(JSC::recomputeDependentOptions): + +2018-09-26 Mark Lam + Assert that performJITMemcpy() is always called with instruction size aligned addresses on ARM64. https://bugs.webkit.org/show_bug.cgi?id=190016 Modified: trunk/Source/_javascript_Core/jit/ExecutableAllocator.cpp (236537 => 236538) --- trunk/Source/_javascript_Core/jit/ExecutableAllocator.cpp 2018-09-27 02:00:32 UTC (rev 236537) +++ trunk/Source/_javascript_Core/jit/ExecutableAllocator.cpp 2018-09-27 04:36:42 UTC (rev 236538) @@ -106,9 +106,11 @@ JS_EXPORT_PRIVATE void* taggedStartOfFixedExecutableMemoryPool; JS_EXPORT_PRIVATE void* taggedEndOfFixedExecutableMemoryPool; + +#if !ENABLE(FAST_JIT_PERMISSIONS) || !CPU(ARM64E) JS_EXPORT_PRIVATE bool useFastPermisionsJITCopy { false }; - JS_EXPORT_PRIVATE JITWriteSeparateHeapsFunction jitWriteSeparateHeapsFunction; +#endif #if !USE(EXECUTE_ONLY_JIT_WRITE_FUNCTION) && HAVE(REMAP_JIT) static uintptr_t startOfFixedWritableMemoryPool; @@ -143,6 +145,11 @@ ASSERT(m_reservation.size() == reservationSize); void* reservationBase = m_reservation.base(); +#if ENABLE(FAST_JIT_PERMISSIONS) && CPU(ARM64E) +RELEASE_ASSERT(os_thread_self_restrict_rwx_is_supported()); +os_thread_self_restrict_rwx_to_rx(); + +#else // not ENABLE(FAST_JIT_PERMISSIONS) or not CPU(ARM64E) #if ENABLE(FAST_JIT_PERMISSIONS) if (os_thread_self_restrict_rwx_is_supported()) { useFastPermisionsJITCopy = true; @@ -156,6 +163,7 @@ reservationSize -= pageSize(); initializeSeparatedWXHeaps(m_reservation.base(), pageSize(), reservationBase, reservationSize); } +#endif // not ENABLE(FAST_JIT_PERMISSIONS) or not CPU(ARM64E) addFreshFreeSpace(reservationBase, reservationSize); @@ -244,7 +252,9 @@ // Zero out writableAddr to avoid leaking the address of the writable mapping. memset_s(, sizeof(writableAddr), 0, sizeof(writableAddr)); +#if !ENABLE(FAST_JIT_PERMISSIONS) || !CPU(ARM64E) jitWriteSeparateHeapsFunction = reinterpret_cast(writeThunk.code().executableAddress()); +#endif } #if CPU(ARM64) && USE(EXECUTE_ONLY_JIT_WRITE_FUNCTION) Modified: trunk/Source/_javascript_Core/jit/ExecutableAllocator.h (236537 => 236538) --- trunk/Source/_javascript_Core/jit/ExecutableAllocator.h 2018-09-27 02:00:32 UTC (rev 236537) +++ trunk/Source/_javascript_Core/jit/ExecutableAllocator.h 2018-09-27 04:36:42 UTC (rev 236538) @@ -81,11 +81,14 @@ return startOfFixedExecutableMemoryPool() <= pc && pc < endOfFixedExecutableMemoryPool(); } +#if !ENABLE(FAST_JIT_PERMISSIONS) || !CPU(ARM64E) + typedef void (*JITWriteSeparateHeapsFunction)(off_t, const void*, size_t); extern JS_EXPORT_PRIVATE JITWriteSeparateHeapsFunction jitWriteSeparateHeapsFunction; - extern JS_EXPORT_PRIVATE bool useFastPermisionsJITCopy; +#endif // !ENABLE(FAST_JIT_PERMISSIONS) || !CPU(ARM64E) + static inline void* performJITMemcpy(void *dst, const void *src, size_t n) { #if CPU(ARM64) @@ -96,14 +99,18 @@ if (dst >= startOfFixedExecutableMemoryPool() && dst < endOfFixedExecutableMemoryPool()) { RELEASE_ASSERT(reinterpret_cast(dst) + n <= endOfFixedExecutableMemoryPool()); #if ENABLE(FAST_JIT_PERMISSIONS) -if
[webkit-changes] [236537] trunk/LayoutTests
Title: [236537] trunk/LayoutTests Revision 236537 Author justin_...@apple.com Date 2018-09-26 19:00:32 -0700 (Wed, 26 Sep 2018) Log Message WebGL 2: updated passing test expectations for deqp/primitiverestart https://bugs.webkit.org/show_bug.cgi?id=189981 Reviewed by Jon Lee. Test-expectation updates for trac.webkit.org/changeset/236490; these are still to be skipped on ews. * webgl/2.0.0/deqp/functional/gles3/primitiverestart/00-expected.txt: * webgl/2.0.0/deqp/functional/gles3/primitiverestart/01-expected.txt: * webgl/2.0.0/deqp/functional/gles3/primitiverestart/02-expected.txt: * webgl/2.0.0/deqp/functional/gles3/primitiverestart/03-expected.txt: * webgl/2.0.0/deqp/functional/gles3/primitiverestart/04-expected.txt: * webgl/2.0.0/deqp/functional/gles3/primitiverestart/05-expected.txt: * webgl/2.0.0/deqp/functional/gles3/primitiverestart/06-expected.txt: * webgl/2.0.0/deqp/functional/gles3/primitiverestart/07-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/00-expected.txt trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/01-expected.txt trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/02-expected.txt trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/03-expected.txt trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/04-expected.txt trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/05-expected.txt trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/06-expected.txt trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/07-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (236536 => 236537) --- trunk/LayoutTests/ChangeLog 2018-09-27 01:42:24 UTC (rev 236536) +++ trunk/LayoutTests/ChangeLog 2018-09-27 02:00:32 UTC (rev 236537) @@ -1,3 +1,21 @@ +2018-09-26 Justin Fan + +WebGL 2: updated passing test expectations for deqp/primitiverestart +https://bugs.webkit.org/show_bug.cgi?id=189981 + +Reviewed by Jon Lee. + +Test-expectation updates for trac.webkit.org/changeset/236490; these are still to be skipped on ews. + +* webgl/2.0.0/deqp/functional/gles3/primitiverestart/00-expected.txt: +* webgl/2.0.0/deqp/functional/gles3/primitiverestart/01-expected.txt: +* webgl/2.0.0/deqp/functional/gles3/primitiverestart/02-expected.txt: +* webgl/2.0.0/deqp/functional/gles3/primitiverestart/03-expected.txt: +* webgl/2.0.0/deqp/functional/gles3/primitiverestart/04-expected.txt: +* webgl/2.0.0/deqp/functional/gles3/primitiverestart/05-expected.txt: +* webgl/2.0.0/deqp/functional/gles3/primitiverestart/06-expected.txt: +* webgl/2.0.0/deqp/functional/gles3/primitiverestart/07-expected.txt: + 2018-09-26 Alex Christensen Unreviewed, rolling out r236524. Modified: trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/00-expected.txt (236536 => 236537) --- trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/00-expected.txt 2018-09-27 01:42:24 UTC (rev 236536) +++ trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/primitiverestart/00-expected.txt 2018-09-27 02:00:32 UTC (rev 236537) @@ -1,69 +1,5 @@ This test runs the WebGL Test listed below in an iframe and reports PASS or FAIL. Test: ../../../../resources/webgl_test_files/deqp/functional/gles3/primitiverestart/00.html -[ 1: FAIL ] primitive_restart.basic.points.unsigned_byte.draw_elements: -[ 2: FAIL ] primitive_restart.basic.points.unsigned_byte.draw_elements_instanced: -[ 3: PASS ] primitive_restart.basic.points.unsigned_byte.draw_range_elements: -[ 4: FAIL ] primitive_restart.basic.points.unsigned_short.draw_elements: -[ 5: FAIL ] primitive_restart.basic.points.unsigned_short.draw_elements_instanced: -[ 6: PASS ] primitive_restart.basic.points.unsigned_short.draw_range_elements: -[ 7: FAIL ] primitive_restart.basic.points.unsigned_int.draw_elements: -[ 8: FAIL ] primitive_restart.basic.points.unsigned_int.draw_elements_instanced: -[ 9: PASS ] primitive_restart.basic.points.unsigned_int.draw_range_elements: -[ 10: FAIL ] primitive_restart.basic.line_strip.unsigned_byte.draw_elements: -[ 11: FAIL ] primitive_restart.basic.line_strip.unsigned_byte.draw_elements_instanced: -[ 12: PASS ] primitive_restart.basic.line_strip.unsigned_byte.draw_range_elements: -[ 13: FAIL ] primitive_restart.basic.line_strip.unsigned_short.draw_elements: -[ 14: FAIL ] primitive_restart.basic.line_strip.unsigned_short.draw_elements_instanced: -[ 15: PASS ] primitive_restart.basic.line_strip.unsigned_short.draw_range_elements: -[ 16: FAIL ] primitive_restart.basic.line_strip.unsigned_int.draw_elements: -[ 17: FAIL ] primitive_restart.basic.line_strip.unsigned_int.draw_elements_instanced: -[ 18: PASS ] primitive_restart.basic.line_strip.unsigned_int.draw_range_elements: -[ 19: FAIL ]
[webkit-changes] [236536] trunk
Title: [236536] trunk Revision 236536 Author commit-qu...@webkit.org Date 2018-09-26 18:42:24 -0700 (Wed, 26 Sep 2018) Log Message Video track clone cannot preserve original property https://bugs.webkit.org/show_bug.cgi?id=189872 Patch by YUHAN WU on 2018-09-26 Reviewed by Youenn Fablet. LayoutTests/imported/w3c: * web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt: Source/WebCore: Fix the issue that the cloned track created by canvas.captureStream().getVideoTracks() cannot keep some attributes, such as enabled. Updated a testcase expected result: LayoutTests/imported/w3c/web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint.html * Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp: (WebCore::CanvasCaptureMediaStreamTrack::CanvasCaptureMediaStreamTrack): (WebCore::CanvasCaptureMediaStreamTrack::create): (WebCore::CanvasCaptureMediaStreamTrack::clone): * Modules/mediastream/CanvasCaptureMediaStreamTrack.h: * Modules/mediastream/MediaStreamTrack.h: Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.h trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (236535 => 236536) --- trunk/LayoutTests/imported/w3c/ChangeLog 2018-09-27 01:24:45 UTC (rev 236535) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2018-09-27 01:42:24 UTC (rev 236536) @@ -1,3 +1,13 @@ +2018-09-26 YUHAN WU + +Video track clone cannot preserve original property +https://bugs.webkit.org/show_bug.cgi?id=189872 + + +Reviewed by Youenn Fablet. + +* web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt: + 2018-09-26 Alex Christensen Unreviewed, rolling out r236524. Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt (236535 => 236536) --- trunk/LayoutTests/imported/w3c/web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt 2018-09-27 01:24:45 UTC (rev 236535) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt 2018-09-27 01:42:24 UTC (rev 236536) @@ -4,6 +4,6 @@ PASS Audio tracks ignore invalid/video contentHints PASS Accepts valid video contentHints PASS Video tracks ignore invalid/audio contentHints -FAIL Cloned video tracks have separate contentHints assert_equals: expected "motion" but got "" +PASS Cloned video tracks have separate contentHints PASS Cloned audio tracks have separate contentHints Modified: trunk/Source/WebCore/ChangeLog (236535 => 236536) --- trunk/Source/WebCore/ChangeLog 2018-09-27 01:24:45 UTC (rev 236535) +++ trunk/Source/WebCore/ChangeLog 2018-09-27 01:42:24 UTC (rev 236536) @@ -1,3 +1,22 @@ +2018-09-26 YUHAN WU + +Video track clone cannot preserve original property +https://bugs.webkit.org/show_bug.cgi?id=189872 + + +Reviewed by Youenn Fablet. + +Fix the issue that the cloned track created by canvas.captureStream().getVideoTracks() cannot keep some attributes, such as enabled. +Updated a testcase expected result: +LayoutTests/imported/w3c/web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint.html + +* Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp: +(WebCore::CanvasCaptureMediaStreamTrack::CanvasCaptureMediaStreamTrack): +(WebCore::CanvasCaptureMediaStreamTrack::create): +(WebCore::CanvasCaptureMediaStreamTrack::clone): +* Modules/mediastream/CanvasCaptureMediaStreamTrack.h: +* Modules/mediastream/MediaStreamTrack.h: + 2018-09-26 Alex Christensen Unreviewed, rolling out r236524. Modified: trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp (236535 => 236536) --- trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp 2018-09-27 01:24:45 UTC (rev 236535) +++ trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp 2018-09-27 01:42:24 UTC (rev 236536) @@ -42,10 +42,15 @@ CanvasCaptureMediaStreamTrack::CanvasCaptureMediaStreamTrack(ScriptExecutionContext& context, Ref&& canvas, Ref&& source) : MediaStreamTrack(context, MediaStreamTrackPrivate::create(source.copyRef())) , m_canvas(WTFMove(canvas)) -, m_source(WTFMove(source)) { } +CanvasCaptureMediaStreamTrack::CanvasCaptureMediaStreamTrack(ScriptExecutionContext& context, Ref&& canvas, Ref&& privateTrack) +: MediaStreamTrack(context, WTFMove(privateTrack)) +, m_canvas(WTFMove(canvas)) +{ +} + Ref CanvasCaptureMediaStreamTrack::Source::create(HTMLCanvasElement& canvas, std::optional&&
[webkit-changes] [236535] tags/Safari-607.1.8/
Title: [236535] tags/Safari-607.1.8/ Revision 236535 Author kocsen_ch...@apple.com Date 2018-09-26 18:24:45 -0700 (Wed, 26 Sep 2018) Log Message Tag Safari-607.1.8. Added Paths tags/Safari-607.1.8/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236534] trunk/Source/JavaScriptCore
Title: [236534] trunk/Source/_javascript_Core Revision 236534 Author mark@apple.com Date 2018-09-26 17:14:16 -0700 (Wed, 26 Sep 2018) Log Message Assert that performJITMemcpy() is always called with instruction size aligned addresses on ARM64. https://bugs.webkit.org/show_bug.cgi?id=190016 Reviewed by Saam Barati. Also assert in performJITMemcpy() that the entire buffer to be copied will fit in JIT memory. * assembler/ARM64Assembler.h: (JSC::ARM64Assembler::fillNops): (JSC::ARM64Assembler::replaceWithVMHalt): (JSC::ARM64Assembler::replaceWithJump): (JSC::ARM64Assembler::replaceWithLoad): (JSC::ARM64Assembler::replaceWithAddressComputation): (JSC::ARM64Assembler::setPointer): (JSC::ARM64Assembler::repatchInt32): (JSC::ARM64Assembler::repatchCompact): (JSC::ARM64Assembler::linkJumpOrCall): (JSC::ARM64Assembler::linkCompareAndBranch): (JSC::ARM64Assembler::linkConditionalBranch): (JSC::ARM64Assembler::linkTestAndBranch): * assembler/LinkBuffer.cpp: (JSC::LinkBuffer::copyCompactAndLinkCode): (JSC::LinkBuffer::linkCode): * jit/ExecutableAllocator.h: (JSC::performJITMemcpy): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/assembler/ARM64Assembler.h trunk/Source/_javascript_Core/assembler/LinkBuffer.cpp trunk/Source/_javascript_Core/jit/ExecutableAllocator.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (236533 => 236534) --- trunk/Source/_javascript_Core/ChangeLog 2018-09-26 23:35:14 UTC (rev 236533) +++ trunk/Source/_javascript_Core/ChangeLog 2018-09-27 00:14:16 UTC (rev 236534) @@ -1,3 +1,33 @@ +2018-09-26 Mark Lam + +Assert that performJITMemcpy() is always called with instruction size aligned addresses on ARM64. +https://bugs.webkit.org/show_bug.cgi?id=190016 + + +Reviewed by Saam Barati. + +Also assert in performJITMemcpy() that the entire buffer to be copied will fit in +JIT memory. + +* assembler/ARM64Assembler.h: +(JSC::ARM64Assembler::fillNops): +(JSC::ARM64Assembler::replaceWithVMHalt): +(JSC::ARM64Assembler::replaceWithJump): +(JSC::ARM64Assembler::replaceWithLoad): +(JSC::ARM64Assembler::replaceWithAddressComputation): +(JSC::ARM64Assembler::setPointer): +(JSC::ARM64Assembler::repatchInt32): +(JSC::ARM64Assembler::repatchCompact): +(JSC::ARM64Assembler::linkJumpOrCall): +(JSC::ARM64Assembler::linkCompareAndBranch): +(JSC::ARM64Assembler::linkConditionalBranch): +(JSC::ARM64Assembler::linkTestAndBranch): +* assembler/LinkBuffer.cpp: +(JSC::LinkBuffer::copyCompactAndLinkCode): +(JSC::LinkBuffer::linkCode): +* jit/ExecutableAllocator.h: +(JSC::performJITMemcpy): + 2018-09-25 Keith Miller Move Symbol API to SPI Modified: trunk/Source/_javascript_Core/assembler/ARM64Assembler.h (236533 => 236534) --- trunk/Source/_javascript_Core/assembler/ARM64Assembler.h 2018-09-26 23:35:14 UTC (rev 236533) +++ trunk/Source/_javascript_Core/assembler/ARM64Assembler.h 2018-09-27 00:14:16 UTC (rev 236534) @@ -266,6 +266,8 @@ class ARM64Assembler { public: +static constexpr size_t instructionSize = sizeof(unsigned); + typedef ARM64Registers::RegisterID RegisterID; typedef ARM64Registers::SPRegisterID SPRegisterID; typedef ARM64Registers::FPRegisterID FPRegisterID; @@ -1562,9 +1564,10 @@ size_t n = size / sizeof(int32_t); for (int32_t* ptr = static_cast(base); n--;) { int insn = nopPseudo(); -if (isCopyingToExecutableMemory) +if (isCopyingToExecutableMemory) { +RELEASE_ASSERT(roundUpToMultipleOf(ptr) == ptr); performJITMemcpy(ptr++, , sizeof(int)); -else +} else memcpy(ptr++, , sizeof(int)); } } @@ -2636,6 +2639,7 @@ { // This should try to write to null which should always Segfault. int insn = dataCacheZeroVirtualAddress(ARM64Registers::zr); +RELEASE_ASSERT(roundUpToMultipleOf(where) == where); performJITMemcpy(where, , sizeof(int)); cacheFlush(where, sizeof(int)); } @@ -2645,6 +2649,7 @@ intptr_t offset = (reinterpret_cast(to) - reinterpret_cast(where)) >> 2; ASSERT(static_cast(offset) == offset); int insn = unconditionalBranchImmediate(false, static_cast(offset)); +RELEASE_ASSERT(roundUpToMultipleOf(where) == where); performJITMemcpy(where, , sizeof(int)); cacheFlush(where, sizeof(int)); } @@ -2675,6 +2680,7 @@ ASSERT(!shift); ASSERT(!(imm12 & ~0xff8)); int insn = loadStoreRegisterUnsignedImmediate(MemOpSize_64, false, MemOp_LOAD, encodePositiveImmediate<64>(imm12), rn, rd); +RELEASE_ASSERT(roundUpToMultipleOf(where) == where); performJITMemcpy(where, , sizeof(int)); cacheFlush(where,
[webkit-changes] [236533] trunk
Title: [236533] trunk Revision 236533 Author achristen...@apple.com Date 2018-09-26 16:35:14 -0700 (Wed, 26 Sep 2018) Log Message Unreviewed, rolling out r236524. Broke API tests Reverted changeset: "URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL" https://bugs.webkit.org/show_bug.cgi?id=189979 https://trac.webkit.org/changeset/236524 Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/imported/w3c/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/mac/WebCoreNSURLExtras.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm Property Changed trunk/LayoutTests/http/tests/media/video-play-stall.html trunk/LayoutTests/imported/w3c/web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html Diff Modified: trunk/LayoutTests/ChangeLog (236532 => 236533) --- trunk/LayoutTests/ChangeLog 2018-09-26 23:23:53 UTC (rev 236532) +++ trunk/LayoutTests/ChangeLog 2018-09-26 23:35:14 UTC (rev 236533) @@ -1,3 +1,16 @@ +2018-09-26 Alex Christensen + +Unreviewed, rolling out r236524. + +Broke API tests + +Reverted changeset: + +"URLWithUserTypedString should return nil for URLs deemed to +be invalid by WebCore::URL" +https://bugs.webkit.org/show_bug.cgi?id=189979 +https://trac.webkit.org/changeset/236524 + 2018-09-26 Per Arne Vollan WebVTT cue alignment broken Index: trunk/LayoutTests/http/tests/media/video-play-stall.html === --- trunk/LayoutTests/http/tests/media/video-play-stall.html 2018-09-26 23:23:53 UTC (rev 236532) +++ trunk/LayoutTests/http/tests/media/video-play-stall.html 2018-09-26 23:35:14 UTC (rev 236533) Property changes: trunk/LayoutTests/http/tests/media/video-play-stall.html Deleted: svn:mergeinfo -/trunk/LayoutTests/http/tests/media/video-play-stall.html:53455 \ No newline at end of property Modified: trunk/LayoutTests/imported/w3c/ChangeLog (236532 => 236533) --- trunk/LayoutTests/imported/w3c/ChangeLog 2018-09-26 23:23:53 UTC (rev 236532) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2018-09-26 23:35:14 UTC (rev 236533) @@ -1,3 +1,16 @@ +2018-09-26 Alex Christensen + +Unreviewed, rolling out r236524. + +Broke API tests + +Reverted changeset: + +"URLWithUserTypedString should return nil for URLs deemed to +be invalid by WebCore::URL" +https://bugs.webkit.org/show_bug.cgi?id=189979 +https://trac.webkit.org/changeset/236524 + 2018-09-26 Chris Dumez Ignore-opens-during-unload counter of a parent should apply to its children during beforeunload event Index: trunk/LayoutTests/imported/w3c/web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html === --- trunk/LayoutTests/imported/w3c/web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html 2018-09-26 23:23:53 UTC (rev 236532) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html 2018-09-26 23:35:14 UTC (rev 236533) Property changes: trunk/LayoutTests/imported/w3c/web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html Deleted: svn:mergeinfo -/trunk/LayoutTests/imported/w3c/web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html:53455 \ No newline at end of property Modified: trunk/Source/WebCore/ChangeLog (236532 => 236533) --- trunk/Source/WebCore/ChangeLog 2018-09-26 23:23:53 UTC (rev 236532) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 23:35:14 UTC (rev 236533) @@ -1,3 +1,16 @@ +2018-09-26 Alex Christensen + +Unreviewed, rolling out r236524. + +Broke API tests + +Reverted changeset: + +"URLWithUserTypedString should return nil for URLs deemed to +be invalid by WebCore::URL" +https://bugs.webkit.org/show_bug.cgi?id=189979 +https://trac.webkit.org/changeset/236524 + 2018-09-26 Per Arne Vollan WebVTT cue alignment broken Modified: trunk/Source/WebCore/platform/mac/WebCoreNSURLExtras.mm (236532 => 236533) --- trunk/Source/WebCore/platform/mac/WebCoreNSURLExtras.mm 2018-09-26 23:23:53 UTC (rev 236532) +++ trunk/Source/WebCore/platform/mac/WebCoreNSURLExtras.mm 2018-09-26 23:35:14 UTC (rev 236533) @@ -853,9 +853,6 @@ } else result = [NSURL URLWithString:@""]; -if (!WebCore::URL(result).isValid()) -return nil; - return result; } static NSData *dataWithUserTypedString(NSString *string) Modified: trunk/Tools/ChangeLog (236532 => 236533) --- trunk/Tools/ChangeLog 2018-09-26 23:23:53 UTC (rev 236532) +++ trunk/Tools/ChangeLog 2018-09-26 23:35:14 UTC (rev 236533) @@ -1,3 +1,16 @@ +2018-09-26 Alex Christensen + +Unreviewed, rolling out r236524. + +Broke API tests + +Reverted changeset: + +"URLWithUserTypedString should return nil for
[webkit-changes] [236532] trunk/Source/WebInspectorUI
Title: [236532] trunk/Source/WebInspectorUI Revision 236532 Author nvasil...@apple.com Date 2018-09-26 16:23:53 -0700 (Wed, 26 Sep 2018) Log Message Web Inspector: Dark Mode: new watch _expression_ popover has light background https://bugs.webkit.org/show_bug.cgi?id=190013 Reviewed by Matt Baker. Make the background dark to match the CodeMirror editor background. * UserInterface/Views/ScopeChainDetailsSidebarPanel.css: (@media (prefers-dark-interface)): (.watch-_expression_-editor): Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.css Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (236531 => 236532) --- trunk/Source/WebInspectorUI/ChangeLog 2018-09-26 23:10:41 UTC (rev 236531) +++ trunk/Source/WebInspectorUI/ChangeLog 2018-09-26 23:23:53 UTC (rev 236532) @@ -1,3 +1,17 @@ +2018-09-26 Nikita Vasilyev + +Web Inspector: Dark Mode: new watch _expression_ popover has light background +https://bugs.webkit.org/show_bug.cgi?id=190013 + + +Reviewed by Matt Baker. + +Make the background dark to match the CodeMirror editor background. + +* UserInterface/Views/ScopeChainDetailsSidebarPanel.css: +(@media (prefers-dark-interface)): +(.watch-_expression_-editor): + 2018-09-21 Nikita Vasilyev REGRESSION(r236237): Web Inspector: DarkMode: white background in Elements and Timelines Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.css (236531 => 236532) --- trunk/Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.css 2018-09-26 23:10:41 UTC (rev 236531) +++ trunk/Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.css 2018-09-26 23:23:53 UTC (rev 236532) @@ -63,3 +63,9 @@ position: relative; top: 1px; } + +@media (prefers-dark-interface) { +.watch-_expression_-editor { +background-color: var(--background-color-code); +} +} ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236531] trunk
Title: [236531] trunk Revision 236531 Author pvol...@apple.com Date 2018-09-26 16:10:41 -0700 (Wed, 26 Sep 2018) Log Message WebVTT cue alignment broken https://bugs.webkit.org/show_bug.cgi?id=190004 Reviewed by Eric Carlson. Source/WebCore: If the position of the queue is unspecified, the default value of 50 was used, which is incorrect. This patch also updates the API according to https://w3c.github.io/webvtt/#the-vttcue-interface. The position attribute should not be a double, but either a double or the "auto" keyword. Parts of this patch is inspired by the associated code in the Chromium project. Test: media/track/track-cue-left-align.html * html/track/TextTrackCueGeneric.cpp: (WebCore::TextTrackCueGenericBoxElement::applyCSSProperties): (WebCore::TextTrackCueGeneric::setPosition): * html/track/TextTrackCueGeneric.h: * html/track/VTTCue.cpp: (WebCore::VTTCueBox::applyCSSProperties): (WebCore::VTTCue::initialize): (WebCore::VTTCue::position const): (WebCore::VTTCue::setPosition): (WebCore::VTTCue::textPositionIsAuto const): (WebCore::VTTCue::calculateComputedTextPosition const): (WebCore::VTTCue::calculateDisplayParameters): (WebCore::VTTCue::toJSON const): * html/track/VTTCue.h: (WebCore::VTTCue::position const): Deleted. * html/track/VTTCue.idl: LayoutTests: * media/track/captions-webvtt/left-align.vtt: Added. * media/track/track-add-remove-cue-expected.txt: * media/track/track-add-remove-cue.html: * media/track/track-cue-left-align-expected-mismatch.html: Added. * media/track/track-cue-left-align.html: Added. * media/track/track-cue-mutable-expected.txt: * media/track/track-cue-mutable.html: * media/track/track-vttcue-expected.txt: * media/track/track-vttcue.html: * media/track/track-webvtt-tc013-settings-expected.txt: * media/track/track-webvtt-tc013-settings.html: * media/track/track-webvtt-tc015-positioning-expected.txt: * media/track/track-webvtt-tc015-positioning.html: * media/track/track-webvtt-tc016-align-positioning-expected.txt: * media/track/track-webvtt-tc016-align-positioning.html: * media/track/track-webvtt-tc018-align-text-line-position-expected.txt: * media/track/track-webvtt-tc018-align-text-line-position.html: * media/track/track-webvtt-tc021-valign-expected.txt: * media/track/track-webvtt-tc021-valign.html: * media/video-test.js: (testCues): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/media/track/track-add-remove-cue-expected.txt trunk/LayoutTests/media/track/track-add-remove-cue.html trunk/LayoutTests/media/track/track-cue-mutable-expected.txt trunk/LayoutTests/media/track/track-cue-mutable.html trunk/LayoutTests/media/track/track-vttcue-expected.txt trunk/LayoutTests/media/track/track-vttcue.html trunk/LayoutTests/media/track/track-webvtt-tc013-settings-expected.txt trunk/LayoutTests/media/track/track-webvtt-tc013-settings.html trunk/LayoutTests/media/track/track-webvtt-tc015-positioning-expected.txt trunk/LayoutTests/media/track/track-webvtt-tc015-positioning.html trunk/LayoutTests/media/track/track-webvtt-tc016-align-positioning-expected.txt trunk/LayoutTests/media/track/track-webvtt-tc016-align-positioning.html trunk/LayoutTests/media/track/track-webvtt-tc018-align-text-line-position-expected.txt trunk/LayoutTests/media/track/track-webvtt-tc018-align-text-line-position.html trunk/LayoutTests/media/track/track-webvtt-tc021-valign-expected.txt trunk/LayoutTests/media/track/track-webvtt-tc021-valign.html trunk/LayoutTests/media/video-test.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/track/TextTrackCueGeneric.cpp trunk/Source/WebCore/html/track/TextTrackCueGeneric.h trunk/Source/WebCore/html/track/VTTCue.cpp trunk/Source/WebCore/html/track/VTTCue.h trunk/Source/WebCore/html/track/VTTCue.idl Added Paths trunk/LayoutTests/media/track/captions-webvtt/left-align.vtt trunk/LayoutTests/media/track/track-cue-left-align-expected-mismatch.html trunk/LayoutTests/media/track/track-cue-left-align.html Diff Modified: trunk/LayoutTests/ChangeLog (236530 => 236531) --- trunk/LayoutTests/ChangeLog 2018-09-26 22:31:18 UTC (rev 236530) +++ trunk/LayoutTests/ChangeLog 2018-09-26 23:10:41 UTC (rev 236531) @@ -1,3 +1,32 @@ +2018-09-26 Per Arne Vollan + +WebVTT cue alignment broken +https://bugs.webkit.org/show_bug.cgi?id=190004 + +Reviewed by Eric Carlson. + +* media/track/captions-webvtt/left-align.vtt: Added. +* media/track/track-add-remove-cue-expected.txt: +* media/track/track-add-remove-cue.html: +* media/track/track-cue-left-align-expected-mismatch.html: Added. +* media/track/track-cue-left-align.html: Added. +* media/track/track-cue-mutable-expected.txt: +* media/track/track-cue-mutable.html: +* media/track/track-vttcue-expected.txt: +* media/track/track-vttcue.html: +* media/track/track-webvtt-tc013-settings-expected.txt: +* media/track/track-webvtt-tc013-settings.html: +*
[webkit-changes] [236530] trunk
Title: [236530] trunk Revision 236530 Author commit-qu...@webkit.org Date 2018-09-26 15:31:18 -0700 (Wed, 26 Sep 2018) Log Message Allow override of viewport configuration. https://bugs.webkit.org/show_bug.cgi?id=188772. . Patch by James Savage on 2018-09-26 Reviewed by Simon Fraser. Source/WebCore: * page/Settings.yaml: * page/ViewportConfiguration.cpp: (WebCore::ViewportConfiguration::nativeWebpageParameters): Provide a viewport configuration similar to width=device-width, with initial scale set to 1. * page/ViewportConfiguration.h: Source/WebKit: * Shared/WebPreferences.yaml: * UIProcess/API/Cocoa/WKPreferences.mm: (-[WKPreferences _setShouldIgnoreMetaViewport:]): (-[WKPreferences _shouldIgnoreMetaViewport]): * UIProcess/API/Cocoa/WKPreferencesPrivate.h: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::viewportPropertiesDidChange): If we are ignoring the viewport, short circuit calling setViewportArguments() and do not do any updates. (WebKit::WebPage::didCommitLoad): Ditto. * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::resetViewportDefaultConfiguration): Select the default configuration based on UIProcess setting. Tools: * WebKitTestRunner/TestController.cpp: (WTR::updateTestOptionsFromTestHeader): Parse new test option key from comments. * WebKitTestRunner/TestOptions.h: * WebKitTestRunner/ios/TestControllerIOS.mm: (WTR::TestController::platformConfigureViewForTest): Handle new test option by modifying the web view's preferences accordingly. LayoutTests: Add test proving that a document without a meta viewport specifying width=device-width still gets a layout when this setting is enabled. I also added a baseline case to prove that without this setting we do not layout at device width. * fast/viewport/ios/ipad/empty-viewport-expected.txt: Added. * fast/viewport/ios/ipad/empty-viewport.html: Added. * fast/viewport/ios/ipad/meta-viewport-disabled-expected.txt: Added. * fast/viewport/ios/ipad/meta-viewport-disabled.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/viewport/ios/resources/viewport-test-utils.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebCore/page/ViewportConfiguration.cpp trunk/Source/WebCore/page/ViewportConfiguration.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/TestController.cpp trunk/Tools/WebKitTestRunner/TestOptions.h trunk/Tools/WebKitTestRunner/ios/TestControllerIOS.mm Added Paths trunk/LayoutTests/fast/viewport/ios/ipad/empty-meta-expected.txt trunk/LayoutTests/fast/viewport/ios/ipad/empty-meta.html trunk/LayoutTests/fast/viewport/ios/ipad/meta-viewport-ignored-expected.txt trunk/LayoutTests/fast/viewport/ios/ipad/meta-viewport-ignored.html Diff Modified: trunk/LayoutTests/ChangeLog (236529 => 236530) --- trunk/LayoutTests/ChangeLog 2018-09-26 22:18:25 UTC (rev 236529) +++ trunk/LayoutTests/ChangeLog 2018-09-26 22:31:18 UTC (rev 236530) @@ -1,3 +1,21 @@ +2018-09-26 James Savage + +Allow override of viewport configuration. +https://bugs.webkit.org/show_bug.cgi?id=188772. +. + +Reviewed by Simon Fraser. + +Add test proving that a document without a meta viewport specifying +width=device-width still gets a layout when this setting is enabled. I also +added a baseline case to prove that without this setting we do not layout +at device width. + +* fast/viewport/ios/ipad/empty-viewport-expected.txt: Added. +* fast/viewport/ios/ipad/empty-viewport.html: Added. +* fast/viewport/ios/ipad/meta-viewport-disabled-expected.txt: Added. +* fast/viewport/ios/ipad/meta-viewport-disabled.html: Added. + 2018-09-26 Alex Christensen uidna_nameToASCII only needs a buffer capacity of 64 Added: trunk/LayoutTests/fast/viewport/ios/ipad/empty-meta-expected.txt (0 => 236530) --- trunk/LayoutTests/fast/viewport/ios/ipad/empty-meta-expected.txt (rev 0) +++ trunk/LayoutTests/fast/viewport/ios/ipad/empty-meta-expected.txt 2018-09-26 22:31:18 UTC (rev 236530) @@ -0,0 +1,6 @@ +Viewport: + +scale 0.78376 +maxScale 5.0 +minScale 0.78376 +visibleRect {"left":"0.0","top":"0.0","width":"979.88843","height":"1281.0"} Added: trunk/LayoutTests/fast/viewport/ios/ipad/empty-meta.html (0 => 236530) --- trunk/LayoutTests/fast/viewport/ios/ipad/empty-meta.html (rev 0) +++ trunk/LayoutTests/fast/viewport/ios/ipad/empty-meta.html 2018-09-26 22:31:18 UTC (rev 236530) @@ -0,0 +1,13 @@ + + + + +
[webkit-changes] [236529] trunk/Source/WebKit
Title: [236529] trunk/Source/WebKit Revision 236529 Author cdu...@apple.com Date 2018-09-26 15:18:25 -0700 (Wed, 26 Sep 2018) Log Message Regression(r236512): WKWebViewCandidateTests.SoftSpaceReplacementAfterCandidateInsertionWithoutReplacement API test is failing https://bugs.webkit.org/show_bug.cgi?id=190007 Reviewed by Alex Christensen. Drop DispatchMessageEvenWhenWaitingForSyncReply SendOption from EditorStateChanged IPC calls to restore pre-r236512 behavior. Before r236512, this option had no effect on IPC from the WebContent to the UIProcess because the m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage flag was set on that IPC::Connection. However, after r236512, m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage is no longer set on the connection, and the DispatchMessageEvenWhenWaitingForSyncReply SendOption was causing this message to get processed out of order with regards to other async IPC, thus causing the API test failure. * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::sendEditorStateUpdate): (WebKit::WebPage::sendPartialEditorStateAndSchedulePostLayoutUpdate): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (236528 => 236529) --- trunk/Source/WebKit/ChangeLog 2018-09-26 21:58:29 UTC (rev 236528) +++ trunk/Source/WebKit/ChangeLog 2018-09-26 22:18:25 UTC (rev 236529) @@ -1,3 +1,22 @@ +2018-09-26 Chris Dumez + +Regression(r236512): WKWebViewCandidateTests.SoftSpaceReplacementAfterCandidateInsertionWithoutReplacement API test is failing +https://bugs.webkit.org/show_bug.cgi?id=190007 + +Reviewed by Alex Christensen. + +Drop DispatchMessageEvenWhenWaitingForSyncReply SendOption from EditorStateChanged IPC calls to restore +pre-r236512 behavior. Before r236512, this option had no effect on IPC from the WebContent to the UIProcess +because the m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage flag was set +on that IPC::Connection. However, after r236512, m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage +is no longer set on the connection, and the DispatchMessageEvenWhenWaitingForSyncReply SendOption was +causing this message to get processed out of order with regards to other async IPC, thus causing the +API test failure. + +* WebProcess/WebPage/WebPage.cpp: +(WebKit::WebPage::sendEditorStateUpdate): +(WebKit::WebPage::sendPartialEditorStateAndSchedulePostLayoutUpdate): + 2018-09-26 Alex Christensen Fix UAF after r236463 Modified: trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp (236528 => 236529) --- trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2018-09-26 21:58:29 UTC (rev 236528) +++ trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2018-09-26 22:18:25 UTC (rev 236529) @@ -5608,7 +5608,7 @@ // If that is the case, just send what we have (i.e. don't include post-layout data) and wait until the // next layer tree commit to compute and send the complete EditorState over. auto state = editorState(); -send(Messages::WebPageProxy::EditorStateChanged(state), pageID(), IPC::SendOption::DispatchMessageEvenWhenWaitingForSyncReply); +send(Messages::WebPageProxy::EditorStateChanged(state), pageID()); if (state.isMissingPostLayoutData) { m_hasPendingEditorStateUpdate = true; @@ -5644,7 +5644,7 @@ if (frame.editor().ignoreSelectionChanges()) return; -send(Messages::WebPageProxy::EditorStateChanged(editorState(IncludePostLayoutDataHint::No)), pageID(), IPC::SendOption::DispatchMessageEvenWhenWaitingForSyncReply); +send(Messages::WebPageProxy::EditorStateChanged(editorState(IncludePostLayoutDataHint::No)), pageID()); if (m_hasPendingEditorStateUpdate) return; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236528] trunk
Title: [236528] trunk Revision 236528 Author achristen...@apple.com Date 2018-09-26 14:58:29 -0700 (Wed, 26 Sep 2018) Log Message URLs with mismatched surrogate pairs in the host should fail to parse https://bugs.webkit.org/show_bug.cgi?id=190005 Reviewed by Chris Dumez. Source/WebCore: Elsewhere in the URLParser, when we encounter mismatched surrogate pairs we use the replacement character, but that just fails later on in domainToASCII, so we may as well just fail. This behavior matches Chrome, but is unclear in the spec. There are no valid uses of hosts containing mismatched surrogate pairs. Covered by new API tests. * platform/URLParser.cpp: (WebCore::URLParser::parseHostAndPort): Tools: * TestWebKitAPI/Tests/WebCore/URLParser.cpp: (TestWebKitAPI::TEST_F): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/URLParser.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (236527 => 236528) --- trunk/Source/WebCore/ChangeLog 2018-09-26 21:56:31 UTC (rev 236527) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 21:58:29 UTC (rev 236528) @@ -1,5 +1,20 @@ 2018-09-26 Alex Christensen +URLs with mismatched surrogate pairs in the host should fail to parse +https://bugs.webkit.org/show_bug.cgi?id=190005 + +Reviewed by Chris Dumez. + +Elsewhere in the URLParser, when we encounter mismatched surrogate pairs we use the replacement character, +but that just fails later on in domainToASCII, so we may as well just fail. +This behavior matches Chrome, but is unclear in the spec. There are no valid uses of hosts containing mismatched surrogate pairs. +Covered by new API tests. + +* platform/URLParser.cpp: +(WebCore::URLParser::parseHostAndPort): + +2018-09-26 Alex Christensen + uidna_nameToASCII only needs a buffer capacity of 64 https://bugs.webkit.org/show_bug.cgi?id=190006 Modified: trunk/Source/WebCore/platform/URLParser.cpp (236527 => 236528) --- trunk/Source/WebCore/platform/URLParser.cpp 2018-09-26 21:56:31 UTC (rev 236527) +++ trunk/Source/WebCore/platform/URLParser.cpp 2018-09-26 21:58:29 UTC (rev 236528) @@ -2753,12 +2753,11 @@ if (UNLIKELY(!isASCII(*iterator))) syntaxViolation(hostBegin); +if (!U_IS_UNICODE_CHAR(*iterator)) +return false; uint8_t buffer[U8_MAX_LENGTH]; int32_t offset = 0; -UBool error = false; -U8_APPEND(buffer, offset, U8_MAX_LENGTH, *iterator, error); -ASSERT_WITH_SECURITY_IMPLICATION(offset <= static_cast(sizeof(buffer))); -// FIXME: Check error. +U8_APPEND_UNSAFE(buffer, offset, *iterator); utf8Encoded.append(buffer, offset); } LCharBuffer percentDecoded = percentDecode(utf8Encoded.data(), utf8Encoded.size(), hostBegin); Modified: trunk/Tools/ChangeLog (236527 => 236528) --- trunk/Tools/ChangeLog 2018-09-26 21:56:31 UTC (rev 236527) +++ trunk/Tools/ChangeLog 2018-09-26 21:58:29 UTC (rev 236528) @@ -1,5 +1,15 @@ 2018-09-26 Alex Christensen +URLs with mismatched surrogate pairs in the host should fail to parse +https://bugs.webkit.org/show_bug.cgi?id=190005 + +Reviewed by Chris Dumez. + +* TestWebKitAPI/Tests/WebCore/URLParser.cpp: +(TestWebKitAPI::TEST_F): + +2018-09-26 Alex Christensen + URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL https://bugs.webkit.org/show_bug.cgi?id=189979 Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp (236527 => 236528) --- trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp 2018-09-26 21:56:31 UTC (rev 236527) +++ trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp 2018-09-26 21:58:29 UTC (rev 236528) @@ -1257,9 +1257,12 @@ const wchar_t surrogateBegin = 0xD800; const wchar_t validSurrogateEnd = 0xDD55; const wchar_t invalidSurrogateEnd = 'A'; +const wchar_t replacementCharacter = 0xFFFD; checkURL(utf16String<12>({'h', 't', 't', 'p', ':', '/', '/', 'w', '/', surrogateBegin, validSurrogateEnd, '\0'}), {"http", "", "", "w", 0, "/%F0%90%85%95", "", "", "http://w/%F0%90%85%95"}, testTabsValueForSurrogatePairs); - +shouldFail(utf16String<10>({'h', 't', 't', 'p', ':', '/', surrogateBegin, invalidSurrogateEnd, '/', '\0'})); +shouldFail(utf16String<9>({'h', 't', 't', 'p', ':', '/', replacementCharacter, '/', '\0'})); + // URLParser matches Chrome and Firefox but not URL::parse. checkURLDifferences(utf16String<12>({'h', 't', 't', 'p', ':', '/', '/', 'w', '/', surrogateBegin, invalidSurrogateEnd}), {"http", "", "", "w", 0, "/%EF%BF%BDA", "", "", "http://w/%EF%BF%BDA"}, ___ webkit-changes mailing list webkit-changes@lists.webkit.org
[webkit-changes] [236527] trunk
Title: [236527] trunk Revision 236527 Author achristen...@apple.com Date 2018-09-26 14:56:31 -0700 (Wed, 26 Sep 2018) Log Message uidna_nameToASCII only needs a buffer capacity of 64 https://bugs.webkit.org/show_bug.cgi?id=190006 Reviewed by Chris Dumez. Source/WebCore: This is specified in https://www.unicode.org/reports/tr46/#ToASCII This is how Chrome and Firefox also behave with long unicode hosts. * platform/URLParser.cpp: (WebCore::URLParser::domainToASCII): LayoutTests: * fast/dom/DOMURL/parsing.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/DOMURL/parsing-expected.txt trunk/LayoutTests/fast/dom/DOMURL/parsing.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/URLParser.cpp Diff Modified: trunk/LayoutTests/ChangeLog (236526 => 236527) --- trunk/LayoutTests/ChangeLog 2018-09-26 21:53:14 UTC (rev 236526) +++ trunk/LayoutTests/ChangeLog 2018-09-26 21:56:31 UTC (rev 236527) @@ -1,3 +1,12 @@ +2018-09-26 Alex Christensen + +uidna_nameToASCII only needs a buffer capacity of 64 +https://bugs.webkit.org/show_bug.cgi?id=190006 + +Reviewed by Chris Dumez. + +* fast/dom/DOMURL/parsing.html: + 2018-09-26 Ryosuke Niwa Selection should work across shadow boundary when initiated by a mouse drag Modified: trunk/LayoutTests/fast/dom/DOMURL/parsing-expected.txt (236526 => 236527) --- trunk/LayoutTests/fast/dom/DOMURL/parsing-expected.txt 2018-09-26 21:53:14 UTC (rev 236526) +++ trunk/LayoutTests/fast/dom/DOMURL/parsing-expected.txt 2018-09-26 21:56:31 UTC (rev 236527) @@ -14,6 +14,7 @@ PASS breakDownURL('http://a:b@c:1/e/f?g%h') is 'protocol=http:, username=a, password=b, hostname=c, host=c:1, port=1, pathname=/e/f, search=?g%h, origin=http://c:1' PASS breakDownURL('http://ex%61mple.com/') is 'protocol=http:, host=example.com, pathname=/, origin=http://example.com, toString=http://example.com/' PASS breakDownURL('http://ex%2fmple.com/') threw exception TypeError: Type error. +PASS i is 54 PASS successfullyParsed is true TEST COMPLETE Modified: trunk/LayoutTests/fast/dom/DOMURL/parsing.html (236526 => 236527) --- trunk/LayoutTests/fast/dom/DOMURL/parsing.html 2018-09-26 21:53:14 UTC (rev 236526) +++ trunk/LayoutTests/fast/dom/DOMURL/parsing.html 2018-09-26 21:56:31 UTC (rev 236527) @@ -57,4 +57,14 @@ shouldBe("breakDownURL('http://ex%61mple.com/')", "'protocol=http:, host=example.com, pathname=/, origin=http://example.com, toString=http://example.com/'"); shouldThrow("breakDownURL('http://ex%2fmple.com/')"); +var longUnicodeDomain = "\u1234"; +var i = 0; +try { +for (i = 0; i < 100; ++i) { +longUnicodeDomain += "a" +new URL("http://" + longUnicodeDomain + "/"); +} +} catch (e) { } +shouldBe("i", "54"); + Modified: trunk/Source/WebCore/ChangeLog (236526 => 236527) --- trunk/Source/WebCore/ChangeLog 2018-09-26 21:53:14 UTC (rev 236526) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 21:56:31 UTC (rev 236527) @@ -1,5 +1,18 @@ 2018-09-26 Alex Christensen +uidna_nameToASCII only needs a buffer capacity of 64 +https://bugs.webkit.org/show_bug.cgi?id=190006 + +Reviewed by Chris Dumez. + +This is specified in https://www.unicode.org/reports/tr46/#ToASCII +This is how Chrome and Firefox also behave with long unicode hosts. + +* platform/URLParser.cpp: +(WebCore::URLParser::domainToASCII): + +2018-09-26 Alex Christensen + URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL https://bugs.webkit.org/show_bug.cgi?id=189979 Modified: trunk/Source/WebCore/platform/URLParser.cpp (236526 => 236527) --- trunk/Source/WebCore/platform/URLParser.cpp 2018-09-26 21:53:14 UTC (rev 236526) +++ trunk/Source/WebCore/platform/URLParser.cpp 2018-09-26 21:56:31 UTC (rev 236527) @@ -620,7 +620,6 @@ template void URLParser::encodeQuery(const Vector& source, const TextEncoding& encoding, CodePointIterator iterator) { -// FIXME: It is unclear in the spec what to do when encoding fails. The behavior should be specified and tested. auto encoded = encoding.encode(StringView(source.data(), source.size()), UnencodableHandling::URLEncodedEntities); auto* data = "" size_t length = encoded.size(); @@ -2568,11 +2567,12 @@ return ascii; } -UChar hostnameBuffer[defaultInlineBufferSize]; +const size_t maxDomainLength = 64; +UChar hostnameBuffer[maxDomainLength]; UErrorCode error = U_ZERO_ERROR; UIDNAInfo processingDetails = UIDNA_INFO_INITIALIZER; -int32_t numCharactersConverted = uidna_nameToASCII((), StringView(domain).upconvertedCharacters(), domain.length(), hostnameBuffer, defaultInlineBufferSize, , ); -ASSERT(numCharactersConverted <= static_cast(defaultInlineBufferSize)); +int32_t numCharactersConverted = uidna_nameToASCII((), StringView(domain).upconvertedCharacters(), domain.length(),
[webkit-changes] [236525] tags/Safari-607.1.7.3/Source/WebCore
Title: [236525] tags/Safari-607.1.7.3/Source/WebCore Revision 236525 Author kocsen_ch...@apple.com Date 2018-09-26 14:53:08 -0700 (Wed, 26 Sep 2018) Log Message Cherry-pick r236350. rdar://problem/44808777 Move AVVideoPerformanceMetrics into AVFoundationSPI.h https://bugs.webkit.org/show_bug.cgi?id=189842 Reviewed by Jon Lee. Source/WebCore: * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: Source/WebCore/PAL: * pal/spi/mac/AVFoundationSPI.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236350 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths tags/Safari-607.1.7.3/Source/WebCore/ChangeLog tags/Safari-607.1.7.3/Source/WebCore/PAL/ChangeLog tags/Safari-607.1.7.3/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h tags/Safari-607.1.7.3/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm Diff Modified: tags/Safari-607.1.7.3/Source/WebCore/ChangeLog (236524 => 236525) --- tags/Safari-607.1.7.3/Source/WebCore/ChangeLog 2018-09-26 21:52:21 UTC (rev 236524) +++ tags/Safari-607.1.7.3/Source/WebCore/ChangeLog 2018-09-26 21:53:08 UTC (rev 236525) @@ -1,5 +1,34 @@ 2018-09-26 Babak Shafiei +Cherry-pick r236350. rdar://problem/44808777 + +Move AVVideoPerformanceMetrics into AVFoundationSPI.h +https://bugs.webkit.org/show_bug.cgi?id=189842 + +Reviewed by Jon Lee. + +Source/WebCore: + +* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: + +Source/WebCore/PAL: + +* pal/spi/mac/AVFoundationSPI.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236350 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2018-09-21 Jer Noble + +Move AVVideoPerformanceMetrics into AVFoundationSPI.h +https://bugs.webkit.org/show_bug.cgi?id=189842 + +Reviewed by Jon Lee. + +* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: + +2018-09-26 Babak Shafiei + Cherry-pick r236288. rdar://problem/43659749 Release assert under RenderView::pageOrViewLogicalHeight Modified: tags/Safari-607.1.7.3/Source/WebCore/PAL/ChangeLog (236524 => 236525) --- tags/Safari-607.1.7.3/Source/WebCore/PAL/ChangeLog 2018-09-26 21:52:21 UTC (rev 236524) +++ tags/Safari-607.1.7.3/Source/WebCore/PAL/ChangeLog 2018-09-26 21:53:08 UTC (rev 236525) @@ -1,3 +1,32 @@ +2018-09-26 Babak Shafiei + +Cherry-pick r236350. rdar://problem/44808777 + +Move AVVideoPerformanceMetrics into AVFoundationSPI.h +https://bugs.webkit.org/show_bug.cgi?id=189842 + +Reviewed by Jon Lee. + +Source/WebCore: + +* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: + +Source/WebCore/PAL: + +* pal/spi/mac/AVFoundationSPI.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236350 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2018-09-21 Jer Noble + +Move AVVideoPerformanceMetrics into AVFoundationSPI.h +https://bugs.webkit.org/show_bug.cgi?id=189842 + +Reviewed by Jon Lee. + +* pal/spi/mac/AVFoundationSPI.h: + 2018-09-14 Eric Carlson Support arbitrary video resolution in getUserMedia API Modified: tags/Safari-607.1.7.3/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h (236524 => 236525) --- tags/Safari-607.1.7.3/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h 2018-09-26 21:52:21 UTC (rev 236524) +++ tags/Safari-607.1.7.3/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h 2018-09-26 21:53:08 UTC (rev 236525) @@ -156,6 +156,15 @@ #endif #endif // !PLATFORM(IOS) + +@interface AVVideoPerformanceMetrics : NSObject +@property (nonatomic, readonly) unsigned long totalNumberOfVideoFrames; +@property (nonatomic, readonly) unsigned long numberOfDroppedVideoFrames; +@property (nonatomic, readonly) unsigned long numberOfCorruptedVideoFrames; +@property (nonatomic, readonly) unsigned long numberOfNonDisplayCompositedVideoFrames; +@property (nonatomic, readonly) double totalFrameDelay; +@end + #endif // USE(APPLE_INTERNAL_SDK) #if PLATFORM(MAC) && !USE(APPLE_INTERNAL_SDK) @@ -227,8 +236,15 @@ #if ((PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED < 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MAX_ALLOWED < 11)) && __has_include() #import +#elif __has_include() +#import #elif __has_include() #import +NS_ASSUME_NONNULL_BEGIN +@interface AVSampleBufferDisplayLayer (VideoPerformanceMetrics) +- (AVVideoPerformanceMetrics *)videoPerformanceMetrics; +@end +NS_ASSUME_NONNULL_END #else NS_ASSUME_NONNULL_BEGIN @@ -245,10 +261,9 @@ - (BOOL)isReadyForMoreMediaData; - (void)requestMediaDataWhenReadyOnQueue:(dispatch_queue_t)queue usingBlock:(void (^)(void))block; - (void)stopRequestingMediaData; +- (AVVideoPerformanceMetrics *)videoPerformanceMetrics; @end - NS_ASSUME_NONNULL_END - #endif
[webkit-changes] [236526] tags/Safari-607.1.7.3/Source/WebCore/PAL
Title: [236526] tags/Safari-607.1.7.3/Source/WebCore/PAL Revision 236526 Author kocsen_ch...@apple.com Date 2018-09-26 14:53:14 -0700 (Wed, 26 Sep 2018) Log Message Cherry-pick r236366. rdar://problem/44808777 Unreviewed Sierra Build Fix; ensure AVVideoPerformanceMetrics are defined on Sierra. * pal/spi/mac/AVFoundationSPI.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236366 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths tags/Safari-607.1.7.3/Source/WebCore/PAL/ChangeLog tags/Safari-607.1.7.3/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h Diff Modified: tags/Safari-607.1.7.3/Source/WebCore/PAL/ChangeLog (236525 => 236526) --- tags/Safari-607.1.7.3/Source/WebCore/PAL/ChangeLog 2018-09-26 21:53:08 UTC (rev 236525) +++ tags/Safari-607.1.7.3/Source/WebCore/PAL/ChangeLog 2018-09-26 21:53:14 UTC (rev 236526) @@ -1,5 +1,21 @@ 2018-09-26 Babak Shafiei +Cherry-pick r236366. rdar://problem/44808777 + +Unreviewed Sierra Build Fix; ensure AVVideoPerformanceMetrics are defined on Sierra. + +* pal/spi/mac/AVFoundationSPI.h: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236366 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2018-09-21 Jer Noble + +Unreviewed Sierra Build Fix; ensure AVVideoPerformanceMetrics are defined on Sierra. + +* pal/spi/mac/AVFoundationSPI.h: + +2018-09-26 Babak Shafiei + Cherry-pick r236350. rdar://problem/44808777 Move AVVideoPerformanceMetrics into AVFoundationSPI.h Modified: tags/Safari-607.1.7.3/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h (236525 => 236526) --- tags/Safari-607.1.7.3/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h 2018-09-26 21:53:08 UTC (rev 236525) +++ tags/Safari-607.1.7.3/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h 2018-09-26 21:53:14 UTC (rev 236526) @@ -157,6 +157,9 @@ #endif // !PLATFORM(IOS) +#endif // USE(APPLE_INTERNAL_SDK) + +#if !USE(APPLE_INTERNAL_SDK) || (PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED < 101300) @interface AVVideoPerformanceMetrics : NSObject @property (nonatomic, readonly) unsigned long totalNumberOfVideoFrames; @property (nonatomic, readonly) unsigned long numberOfDroppedVideoFrames; @@ -164,9 +167,8 @@ @property (nonatomic, readonly) unsigned long numberOfNonDisplayCompositedVideoFrames; @property (nonatomic, readonly) double totalFrameDelay; @end +#endif -#endif // USE(APPLE_INTERNAL_SDK) - #if PLATFORM(MAC) && !USE(APPLE_INTERNAL_SDK) NS_ASSUME_NONNULL_BEGIN @interface AVStreamDataParser (AVStreamDataParserPrivate) @@ -236,6 +238,11 @@ #if ((PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED < 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MAX_ALLOWED < 11)) && __has_include() #import +NS_ASSUME_NONNULL_BEGIN +@interface AVSampleBufferDisplayLayer (VideoPerformanceMetrics) +- (AVVideoPerformanceMetrics *)videoPerformanceMetrics; +@end +NS_ASSUME_NONNULL_END #elif __has_include() #import #elif __has_include() ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236524] trunk
Title: [236524] trunk Revision 236524 Author achristen...@apple.com Date 2018-09-26 14:52:21 -0700 (Wed, 26 Sep 2018) Log Message URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL https://bugs.webkit.org/show_bug.cgi?id=189979 Reviewed by Chris Dumez. Source/WebCore: Covered by an API test. * platform/mac/WebCoreNSURLExtras.mm: (WebCore::URLWithData): Tools: * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm: (TestWebKitAPI::TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/mac/WebCoreNSURLExtras.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm Diff Modified: trunk/Source/WebCore/ChangeLog (236523 => 236524) --- trunk/Source/WebCore/ChangeLog 2018-09-26 21:48:04 UTC (rev 236523) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 21:52:21 UTC (rev 236524) @@ -1,3 +1,16 @@ +2018-09-26 Alex Christensen + +URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL +https://bugs.webkit.org/show_bug.cgi?id=189979 + + +Reviewed by Chris Dumez. + +Covered by an API test. + +* platform/mac/WebCoreNSURLExtras.mm: +(WebCore::URLWithData): + 2018-09-26 Ryosuke Niwa Selection should work across shadow boundary when initiated by a mouse drag Modified: trunk/Source/WebCore/platform/mac/WebCoreNSURLExtras.mm (236523 => 236524) --- trunk/Source/WebCore/platform/mac/WebCoreNSURLExtras.mm 2018-09-26 21:48:04 UTC (rev 236523) +++ trunk/Source/WebCore/platform/mac/WebCoreNSURLExtras.mm 2018-09-26 21:52:21 UTC (rev 236524) @@ -853,6 +853,9 @@ } else result = [NSURL URLWithString:@""]; +if (!WebCore::URL(result).isValid()) +return nil; + return result; } static NSData *dataWithUserTypedString(NSString *string) Modified: trunk/Tools/ChangeLog (236523 => 236524) --- trunk/Tools/ChangeLog 2018-09-26 21:48:04 UTC (rev 236523) +++ trunk/Tools/ChangeLog 2018-09-26 21:52:21 UTC (rev 236524) @@ -1,3 +1,14 @@ +2018-09-26 Alex Christensen + +URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL +https://bugs.webkit.org/show_bug.cgi?id=189979 + + +Reviewed by Chris Dumez. + +* TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm: +(TestWebKitAPI::TEST): + 2018-09-26 Ryosuke Niwa Selection should work across shadow boundary when initiated by a mouse drag Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm (236523 => 236524) --- trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm 2018-09-26 21:48:04 UTC (rev 236523) +++ trunk/Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm 2018-09-26 21:52:21 UTC (rev 236524) @@ -192,6 +192,8 @@ NSString *encodedHostName = WebCore::encodeHostName(@"http://.com"); EXPECT_TRUE(encodedHostName == nil); + +EXPECT_TRUE(WebCore::URLWithUserTypedString(@"https://a@/b", nil) == nil); } TEST(WebCore, URLExtras_Nil) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236523] trunk/Source/WebKit
Title: [236523] trunk/Source/WebKit Revision 236523 Author achristen...@apple.com Date 2018-09-26 14:48:04 -0700 (Wed, 26 Sep 2018) Log Message Fix UAF after r236463 https://bugs.webkit.org/show_bug.cgi?id=190011 Reviewed by Chris Dumez. I had removed an early return in NetworkResourceLoader::continueDidReceiveResponse. Reading the (probably) null m_responseCompletionHandler was reading after the object had been destroyed. * NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::continueDidReceiveResponse): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (236522 => 236523) --- trunk/Source/WebKit/ChangeLog 2018-09-26 20:33:00 UTC (rev 236522) +++ trunk/Source/WebKit/ChangeLog 2018-09-26 21:48:04 UTC (rev 236523) @@ -1,3 +1,16 @@ +2018-09-26 Alex Christensen + +Fix UAF after r236463 +https://bugs.webkit.org/show_bug.cgi?id=190011 + +Reviewed by Chris Dumez. + +I had removed an early return in NetworkResourceLoader::continueDidReceiveResponse. +Reading the (probably) null m_responseCompletionHandler was reading after the object had been destroyed. + +* NetworkProcess/NetworkResourceLoader.cpp: +(WebKit::NetworkResourceLoader::continueDidReceiveResponse): + 2018-09-26 Ryosuke Niwa Selection should work across shadow boundary when initiated by a mouse drag Modified: trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp (236522 => 236523) --- trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp 2018-09-26 20:33:00 UTC (rev 236522) +++ trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp 2018-09-26 21:48:04 UTC (rev 236523) @@ -712,8 +712,10 @@ void NetworkResourceLoader::continueDidReceiveResponse() { -if (m_cacheEntryWaitingForContinueDidReceiveResponse) +if (m_cacheEntryWaitingForContinueDidReceiveResponse) { continueProcessingCachedEntryAfterDidReceiveResponse(WTFMove(m_cacheEntryWaitingForContinueDidReceiveResponse)); +return; +} if (m_responseCompletionHandler) m_responseCompletionHandler(PolicyAction::Use); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236522] trunk/Source/WebCore
Title: [236522] trunk/Source/WebCore Revision 236522 Author rn...@webkit.org Date 2018-09-26 13:33:00 -0700 (Wed, 26 Sep 2018) Log Message Selection should work across shadow boundary when initiated by a mouse drag https://bugs.webkit.org/show_bug.cgi?id=151380 Revert the change that I said I would from r236519. * editing/VisibleSelection.cpp: (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/editing/VisibleSelection.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (236521 => 236522) --- trunk/Source/WebCore/ChangeLog 2018-09-26 20:31:29 UTC (rev 236521) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 20:33:00 UTC (rev 236522) @@ -1,3 +1,14 @@ +2018-09-26 Ryosuke Niwa + +Selection should work across shadow boundary when initiated by a mouse drag +https://bugs.webkit.org/show_bug.cgi?id=151380 + + +Revert the change that I said I would from r236519. + +* editing/VisibleSelection.cpp: +(WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries): + 2018-09-26 Commit Queue Unreviewed, rolling out r236511. Modified: trunk/Source/WebCore/editing/VisibleSelection.cpp (236521 => 236522) --- trunk/Source/WebCore/editing/VisibleSelection.cpp 2018-09-26 20:31:29 UTC (rev 236521) +++ trunk/Source/WebCore/editing/VisibleSelection.cpp 2018-09-26 20:33:00 UTC (rev 236522) @@ -538,10 +538,10 @@ } if (m_baseIsFirst) { -m_extent = adjustPositionForEnd(m_end, startNode.ptr()); +m_extent = adjustPositionForEnd(m_end, m_start.containerNode()); m_end = m_extent; } else { -m_extent = adjustPositionForStart(m_start, endNode.ptr()); +m_extent = adjustPositionForStart(m_start, m_end.containerNode()); m_start = m_extent; } } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236521] trunk/Source/WebCore
Title: [236521] trunk/Source/WebCore Revision 236521 Author commit-qu...@webkit.org Date 2018-09-26 13:31:29 -0700 (Wed, 26 Sep 2018) Log Message Unreviewed, rolling out r236511. https://bugs.webkit.org/show_bug.cgi?id=190008 It is breaking some WebRTC tests (Requested by youenn on #webkit). Reverted changeset: "[MediaStream] Clean up RealtimeMediaSource settings change handling" https://bugs.webkit.org/show_bug.cgi?id=189998 https://trac.webkit.org/changeset/236511 Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm trunk/Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp trunk/Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (236520 => 236521) --- trunk/Source/WebCore/ChangeLog 2018-09-26 20:04:27 UTC (rev 236520) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 20:31:29 UTC (rev 236521) @@ -1,3 +1,18 @@ +2018-09-26 Commit Queue + +Unreviewed, rolling out r236511. +https://bugs.webkit.org/show_bug.cgi?id=190008 + +It is breaking some WebRTC tests (Requested by youenn on +#webkit). + +Reverted changeset: + +"[MediaStream] Clean up RealtimeMediaSource settings change +handling" +https://bugs.webkit.org/show_bug.cgi?id=189998 +https://trac.webkit.org/changeset/236511 + 2018-09-26 Ryosuke Niwa Selection should work across shadow boundary when initiated by a mouse drag Modified: trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp (236520 => 236521) --- trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp 2018-09-26 20:04:27 UTC (rev 236520) +++ trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp 2018-09-26 20:31:29 UTC (rev 236521) @@ -133,10 +133,6 @@ void RealtimeMediaSource::settingsDidChange(OptionSet) { -} - -void RealtimeMediaSource::notifySettingsDidChangeObservers(OptionSet flags) -{ ASSERT(isMainThread()); if (m_pendingSettingsDidChangeNotification) @@ -143,8 +139,6 @@ return; m_pendingSettingsDidChangeNotification = true; -settingsDidChange(flags); - scheduleDeferredTask([this] { m_pendingSettingsDidChangeNotification = false; forEachObserver([](auto& observer) { @@ -870,7 +864,7 @@ changed.add(RealtimeMediaSourceSettings::Flag::Height); m_size = size; -notifySettingsDidChangeObservers(changed); +settingsDidChange(changed); } void RealtimeMediaSource::setFrameRate(double rate) @@ -879,7 +873,7 @@ return; m_frameRate = rate; -notifySettingsDidChangeObservers(RealtimeMediaSourceSettings::Flag::FrameRate); +settingsDidChange(RealtimeMediaSourceSettings::Flag::FrameRate); } void RealtimeMediaSource::setAspectRatio(double ratio) @@ -889,7 +883,7 @@ m_aspectRatio = ratio; m_size.setHeight(m_size.width() / ratio); -notifySettingsDidChangeObservers({ RealtimeMediaSourceSettings::Flag::AspectRatio, RealtimeMediaSourceSettings::Flag::Height }); +settingsDidChange({ RealtimeMediaSourceSettings::Flag::AspectRatio, RealtimeMediaSourceSettings::Flag::Height }); } void RealtimeMediaSource::setFacingMode(RealtimeMediaSourceSettings::VideoFacingMode mode) @@ -898,7 +892,7 @@ return; m_facingMode = mode; -notifySettingsDidChangeObservers(RealtimeMediaSourceSettings::Flag::FacingMode); +settingsDidChange(RealtimeMediaSourceSettings::Flag::FacingMode); } void RealtimeMediaSource::setVolume(double volume) @@ -907,7 +901,7 @@ return; m_volume = volume; -notifySettingsDidChangeObservers(RealtimeMediaSourceSettings::Flag::Volume); +settingsDidChange(RealtimeMediaSourceSettings::Flag::Volume); } void RealtimeMediaSource::setSampleRate(int rate) @@ -916,7 +910,7 @@ return; m_sampleRate = rate; -notifySettingsDidChangeObservers(RealtimeMediaSourceSettings::Flag::SampleRate); +settingsDidChange(RealtimeMediaSourceSettings::Flag::SampleRate); } std::optional> RealtimeMediaSource::discreteSampleRates() const @@ -930,7 +924,7 @@ return; m_sampleSize = size; -notifySettingsDidChangeObservers(RealtimeMediaSourceSettings::Flag::SampleSize); +settingsDidChange(RealtimeMediaSourceSettings::Flag::SampleSize); } std::optional> RealtimeMediaSource::discreteSampleSizes() const @@ -944,7 +938,7 @@ return; m_echoCancellation = echoCancellation; -notifySettingsDidChangeObservers(RealtimeMediaSourceSettings::Flag::EchoCancellation); +settingsDidChange(RealtimeMediaSourceSettings::Flag::EchoCancellation); } void
[webkit-changes] [236520] trunk/Source/JavaScriptCore
Title: [236520] trunk/Source/_javascript_Core Revision 236520 Author keith_mil...@apple.com Date 2018-09-26 13:04:27 -0700 (Wed, 26 Sep 2018) Log Message Move Symbol API to SPI https://bugs.webkit.org/show_bug.cgi?id=189946 Reviewed by Michael Saboff. Some of the property access methods on JSValue needed to be moved to a category so that SPI overloads don't result in a compiler error for internal users. Additionally, this patch does not move the new enum entry for Symbols in the JSType enumeration. * API/JSObjectRef.h: * API/JSObjectRefPrivate.h: * API/JSValue.h: * API/JSValuePrivate.h: * API/JSValueRef.h: Modified Paths trunk/Source/_javascript_Core/API/JSObjectRef.h trunk/Source/_javascript_Core/API/JSObjectRefPrivate.h trunk/Source/_javascript_Core/API/JSValue.h trunk/Source/_javascript_Core/API/JSValuePrivate.h trunk/Source/_javascript_Core/API/JSValueRef.h trunk/Source/_javascript_Core/ChangeLog Diff Modified: trunk/Source/_javascript_Core/API/JSObjectRef.h (236519 => 236520) --- trunk/Source/_javascript_Core/API/JSObjectRef.h 2018-09-26 20:02:57 UTC (rev 236519) +++ trunk/Source/_javascript_Core/API/JSObjectRef.h 2018-09-26 20:04:27 UTC (rev 236520) @@ -555,54 +555,6 @@ /*! @function -@abstract Tests whether an object has a given property using a JSValueRef as the property key. -@param object The JSObject to test. -@param propertyKey A JSValueRef containing the property key to use when looking up the property. -@param exception A pointer to a JSValueRef in which to store an exception, if any. Pass NULL if you do not care to store an exception. -@result true if the object has a property whose name matches propertyKey, otherwise false. -@discussion This function is the same as performing "propertyKey in object" from _javascript_. -*/ -JS_EXPORT bool JSObjectHasPropertyForKey(JSContextRef ctx, JSObjectRef object, JSValueRef propertyKey, JSValueRef* exception) JSC_API_AVAILABLE(macosx(JSC_MAC_TBA), ios(JSC_IOS_TBA)); - -/*! -@function -@abstract Gets a property from an object using a JSValueRef as the property key. -@param ctx The execution context to use. -@param object The JSObject whose property you want to get. -@param propertyKey A JSValueRef containing the property key to use when looking up the property. -@param exception A pointer to a JSValueRef in which to store an exception, if any. Pass NULL if you do not care to store an exception. -@result The property's value if object has the property key, otherwise the undefined value. -@discussion This function is the same as performing "object[propertyKey]" from _javascript_. -*/ -JS_EXPORT JSValueRef JSObjectGetPropertyForKey(JSContextRef ctx, JSObjectRef object, JSValueRef propertyKey, JSValueRef* exception) JSC_API_AVAILABLE(macosx(JSC_MAC_TBA), ios(JSC_IOS_TBA)); - -/*! -@function -@abstract Sets a property on an object using a JSValueRef as the property key. -@param ctx The execution context to use. -@param object The JSObject whose property you want to set. -@param propertyKey A JSValueRef containing the property key to use when looking up the property. -@param value A JSValueRef to use as the property's value. -@param attributes A logically ORed set of JSPropertyAttributes to give to the property. -@param exception A pointer to a JSValueRef in which to store an exception, if any. Pass NULL if you do not care to store an exception. -@discussion This function is the same as performing "object[propertyKey] = value" from _javascript_. -*/ -JS_EXPORT void JSObjectSetPropertyForKey(JSContextRef ctx, JSObjectRef object, JSValueRef propertyKey, JSValueRef value, JSPropertyAttributes attributes, JSValueRef* exception) JSC_API_AVAILABLE(macosx(JSC_MAC_TBA), ios(JSC_IOS_TBA)); - -/*! -@function -@abstract Deletes a property from an object using a JSValueRef as the property key. -@param ctx The execution context to use. -@param object The JSObject whose property you want to delete. -@param propertyKey A JSValueRef containing the property key to use when looking up the property. -@param exception A pointer to a JSValueRef in which to store an exception, if any. Pass NULL if you do not care to store an exception. -@result true if the delete operation succeeds, otherwise false (for example, if the property has the kJSPropertyAttributeDontDelete attribute set). -@discussion This function is the same as performing "delete object[propertyKey]" from _javascript_. -*/ -JS_EXPORT bool JSObjectDeletePropertyForKey(JSContextRef ctx, JSObjectRef object, JSValueRef propertyKey, JSValueRef* exception) JSC_API_AVAILABLE(macosx(JSC_MAC_TBA), ios(JSC_IOS_TBA)); - -/*! -@function @abstract Gets a property from an object by numeric index. @param ctx The execution context to use. @param object The JSObject whose property you want to get. Modified: trunk/Source/_javascript_Core/API/JSObjectRefPrivate.h (236519 => 236520) --- trunk/Source/_javascript_Core/API/JSObjectRefPrivate.h 2018-09-26 20:02:57 UTC (rev 236519) +++
[webkit-changes] [236519] trunk
Title: [236519] trunk Revision 236519 Author rn...@webkit.org Date 2018-09-26 13:02:57 -0700 (Wed, 26 Sep 2018) Log Message Selection should work across shadow boundary when initiated by a mouse drag https://bugs.webkit.org/show_bug.cgi?id=151380 Source/WebCore: Reviewed by Antti Koivisto and Wenson Hsieh. This patch adds the basic support for selecting content across shadow DOM boundaries to VisibleSelection, which is enough to allow users to select content across shadow DOM boundaries via a mouse drag. This is the first step in allowing users to select, copy and paste content across shadow DOM boundaries, which is a serious user experience regression right now. The new behavior is disabled by default under an interal debug feature flag: selectionAcrossShadowBoundariesEnabled. Like Chrome, we are not going to support selecting editable content across shadow DOM boundaries since we'd have to generalize every editing commands to make that work, and there aren't any HTML editors that use shadow DOM boundaries within an editable region yet. For simplicity, we also don't support extending a selection out of a shadow root which resides inside an editing region. The keyboard based navigation & manipulation of selection as well as allowing copy & paste of content across shadow DOM boundaries will be implemented by separate patches. DOMSelection will not expose this new behavior either. This is tracked in the spec as https://github.com/w3c/webcomponents/issues/79 Tests: editing/selection/selection-across-shadow-boundaries-mixed-editability-1.html editing/selection/selection-across-shadow-boundaries-mixed-editability-2.html editing/selection/selection-across-shadow-boundaries-mixed-editability-3.html editing/selection/selection-across-shadow-boundaries-mixed-editability-4.html editing/selection/selection-across-shadow-boundaries-mixed-editability-5.html editing/selection/selection-across-shadow-boundaries-readonly-1.html editing/selection/selection-across-shadow-boundaries-readonly-2.html editing/selection/selection-across-shadow-boundaries-readonly-3.html editing/selection/selection-across-shadow-boundaries-user-select-all-1.html * editing/VisibleSelection.cpp: (WebCore::isInUserAgentShadowRootOrHasEditableShadowAncestor): Added. (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries): When the feature is enabled, allow crossing shadow DOM boundaries except when either end is inside an user agent shadow root, or one of its shadow includign ancestor is inside an editable region. The latter check is needed to disallow an extension of a selection starting in a shadow tree inside a non-editable region inside an editable region to outside the editable region. The rest of the editing code is not ready to deal with selection like that. * page/Settings.yaml: Added an internal debug feature to enable this new behavior. Source/WebKit: Reviewed by Antti Koivisto. Added SelectionAcrossShadowBoundariesEnabled as an internal debug feature, and moved CSSCustomPropertiesAndValuesEnabled to where other experimental features are located. * Shared/WebPreferences.yaml: Source/WebKitLegacy/mac: Reviewed by Wenson Hsieh. Added selectionAcrossShadowBoundariesEnabled as a preference to be used in DumpRenderTree. * WebView/WebPreferenceKeysPrivate.h: * WebView/WebPreferences.mm: (+[WebPreferences initialize]): (-[WebPreferences selectionAcrossShadowBoundariesEnabled]): (-[WebPreferences setSelectionAcrossShadowBoundariesEnabled:]): * WebView/WebPreferencesPrivate.h: * WebView/WebView.mm: (-[WebView _preferencesChanged:]): Tools: Reviewed by Wenson Hsieh. Added the support for internal:selectionAcrossShadowBoundariesEnabled test option. * DumpRenderTree/TestOptions.cpp: (TestOptions::TestOptions): * DumpRenderTree/TestOptions.h: * DumpRenderTree/mac/DumpRenderTree.mm: (resetWebPreferencesToConsistentValues): (setWebPreferencesForTestOptions): LayoutTests: Reviewed by Antti Koivisto and Wenson Hsieh. Added regression tests using ref tests since getSelection() doesn't expose any node inside a shadow tree. * editing/selection/selection-across-shadow-boundaries-mixed-editability-1-expected.html: Added. * editing/selection/selection-across-shadow-boundaries-mixed-editability-1.html: Added. * editing/selection/selection-across-shadow-boundaries-mixed-editability-2-expected.html: Added. * editing/selection/selection-across-shadow-boundaries-mixed-editability-2.html: Added. * editing/selection/selection-across-shadow-boundaries-mixed-editability-3-expected.html: Added. * editing/selection/selection-across-shadow-boundaries-mixed-editability-3.html: Added. * editing/selection/selection-across-shadow-boundaries-mixed-editability-4-expected.html: Added. * editing/selection/selection-across-shadow-boundaries-mixed-editability-4.html: Added. * editing/selection/selection-across-shadow-boundaries-mixed-editability-5-expected.html: Added. *
[webkit-changes] [236518] trunk/Tools
Title: [236518] trunk/Tools Revision 236518 Author rn...@webkit.org Date 2018-09-26 12:47:46 -0700 (Wed, 26 Sep 2018) Log Message MiniBrowser doesn't respect default enabled-ness of experimental and internal debug features https://bugs.webkit.org/show_bug.cgi?id=189989 Reviewed by Simon Fraser. When the preference isn't found in user defaults, use the default value of each feature's enabledness. * MiniBrowser/mac/AppDelegate.m: (defaultConfiguration): Modified Paths trunk/Tools/ChangeLog trunk/Tools/MiniBrowser/mac/AppDelegate.m Diff Modified: trunk/Tools/ChangeLog (236517 => 236518) --- trunk/Tools/ChangeLog 2018-09-26 19:29:54 UTC (rev 236517) +++ trunk/Tools/ChangeLog 2018-09-26 19:47:46 UTC (rev 236518) @@ -1,3 +1,15 @@ +2018-09-26 Ryosuke Niwa + +MiniBrowser doesn't respect default enabled-ness of experimental and internal debug features +https://bugs.webkit.org/show_bug.cgi?id=189989 + +Reviewed by Simon Fraser. + +When the preference isn't found in user defaults, use the default value of each feature's enabledness. + +* MiniBrowser/mac/AppDelegate.m: +(defaultConfiguration): + 2018-09-26 Philippe Normand [Flatpak] Bump to apr 1.6.5 Modified: trunk/Tools/MiniBrowser/mac/AppDelegate.m (236517 => 236518) --- trunk/Tools/MiniBrowser/mac/AppDelegate.m 2018-09-26 19:29:54 UTC (rev 236517) +++ trunk/Tools/MiniBrowser/mac/AppDelegate.m 2018-09-26 19:47:46 UTC (rev 236518) @@ -109,13 +109,21 @@ #if WK_API_ENABLED NSArray<_WKExperimentalFeature *> *experimentalFeatures = [WKPreferences _experimentalFeatures]; for (_WKExperimentalFeature *feature in experimentalFeatures) { -BOOL enabled = [[NSUserDefaults standardUserDefaults] boolForKey:feature.key]; +BOOL enabled; +if ([[NSUserDefaults standardUserDefaults] objectForKey:feature.key]) +enabled = [[NSUserDefaults standardUserDefaults] boolForKey:feature.key]; +else +enabled = [feature defaultValue]; [configuration.preferences _setEnabled:enabled forExperimentalFeature:feature]; } NSArray<_WKInternalDebugFeature *> *internalDebugFeatures = [WKPreferences _internalDebugFeatures]; for (_WKInternalDebugFeature *feature in internalDebugFeatures) { -BOOL enabled = [[NSUserDefaults standardUserDefaults] boolForKey:feature.key]; +BOOL enabled; +if ([[NSUserDefaults standardUserDefaults] objectForKey:feature.key]) +enabled = [[NSUserDefaults standardUserDefaults] boolForKey:feature.key]; +else +enabled = [feature defaultValue]; [configuration.preferences _setEnabled:enabled forInternalDebugFeature:feature]; } #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236517] trunk
Title: [236517] trunk Revision 236517 Author cdu...@apple.com Date 2018-09-26 12:29:54 -0700 (Wed, 26 Sep 2018) Log Message Ignore-opens-during-unload counter of a parent should apply to its children during beforeunload event https://bugs.webkit.org/show_bug.cgi?id=189376 Reviewed by Ryosuke Niwa. LayoutTests/imported/w3c: Rebaseline existing test now that one more check is passing. * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window-expected.txt: Source/WebCore: Make sure the Ignore-opens-during-unload counter of a parent stays incremented while we are firing the beforeunload event for its descendants, as per: - https://html.spec.whatwg.org/multipage/browsing-the-web.html#prompt-to-unload-a-document No new tests, rebaselined existing tests. * loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldClose): (WebCore::FrameLoader::dispatchBeforeUnloadEvent): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/FrameLoader.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (236516 => 236517) --- trunk/LayoutTests/imported/w3c/ChangeLog 2018-09-26 19:16:52 UTC (rev 236516) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2018-09-26 19:29:54 UTC (rev 236517) @@ -1,3 +1,15 @@ +2018-09-26 Chris Dumez + +Ignore-opens-during-unload counter of a parent should apply to its children during beforeunload event +https://bugs.webkit.org/show_bug.cgi?id=189376 + + +Reviewed by Ryosuke Niwa. + +Rebaseline existing test now that one more check is passing. + +* web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window-expected.txt: + 2018-09-25 YUHAN WU Implement MediaStreamTrack Content Hints Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window-expected.txt (236516 => 236517) --- trunk/LayoutTests/imported/w3c/web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window-expected.txt 2018-09-26 19:16:52 UTC (rev 236516) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window-expected.txt 2018-09-26 19:29:54 UTC (rev 236517) @@ -2,7 +2,7 @@ Harness Error (TIMEOUT), message = null PASS document.open should bail out when ignore-opens-during-unload is greater than 0 during beforeunload event (in top-level browsing context) -FAIL document.open should bail out when ignore-opens-during-unload is greater than 0 during beforeunload event (open(parent) while unloading parent and child) assert_not_equals: got disallowed value 0 +PASS document.open should bail out when ignore-opens-during-unload is greater than 0 during beforeunload event (open(parent) while unloading parent and child) PASS document.open should bail out when ignore-opens-during-unload is greater than 0 during beforeunload event (open(parent) while unloading child only) PASS document.open should bail out when ignore-opens-during-unload is greater than 0 during pagehide event (in top-level browsing context) PASS document.open should bail out when ignore-opens-during-unload is greater than 0 during pagehide event (open(parent) while unloading parent and child) Modified: trunk/Source/WebCore/ChangeLog (236516 => 236517) --- trunk/Source/WebCore/ChangeLog 2018-09-26 19:16:52 UTC (rev 236516) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 19:29:54 UTC (rev 236517) @@ -1,3 +1,21 @@ +2018-09-26 Chris Dumez + +Ignore-opens-during-unload counter of a parent should apply to its children during beforeunload event +https://bugs.webkit.org/show_bug.cgi?id=189376 + + +Reviewed by Ryosuke Niwa. + +Make sure the Ignore-opens-during-unload counter of a parent stays incremented while we are firing the +beforeunload event for its descendants, as per: +- https://html.spec.whatwg.org/multipage/browsing-the-web.html#prompt-to-unload-a-document + +No new tests, rebaselined existing tests. + +* loader/FrameLoader.cpp: +(WebCore::FrameLoader::shouldClose): +(WebCore::FrameLoader::dispatchBeforeUnloadEvent): + 2018-09-26 Justin Fan WebGL 2: Adding logging to in-progress features Modified: trunk/Source/WebCore/loader/FrameLoader.cpp (236516 => 236517) --- trunk/Source/WebCore/loader/FrameLoader.cpp 2018-09-26 19:16:52 UTC (rev 236516) +++ trunk/Source/WebCore/loader/FrameLoader.cpp 2018-09-26 19:29:54 UTC (rev 236517) @@ -3122,6 +3122,7 @@ bool shouldClose = false;
[webkit-changes] [236516] trunk/Source/WebCore
Title: [236516] trunk/Source/WebCore Revision 236516 Author justin_...@apple.com Date 2018-09-26 12:16:52 -0700 (Wed, 26 Sep 2018) Log Message WebGL 2: Adding logging to in-progress features https://bugs.webkit.org/show_bug.cgi?id=189978 Reviewed by Jon Lee. Logging will allow us to better identify the most in-demand WebGL 2 features and prioritize our efforts. No tests as no change in WebGL functionality. * html/canvas/WebGL2RenderingContext.cpp: Added logging statement to every function not yet implemented. (WebCore::WebGL2RenderingContext::blitFramebuffer): (WebCore::WebGL2RenderingContext::framebufferTextureLayer): (WebCore::WebGL2RenderingContext::invalidateFramebuffer): (WebCore::WebGL2RenderingContext::invalidateSubFramebuffer): (WebCore::WebGL2RenderingContext::readBuffer): (WebCore::WebGL2RenderingContext::texStorage3D): (WebCore::WebGL2RenderingContext::texImage2D): (WebCore::WebGL2RenderingContext::texImage3D): (WebCore::WebGL2RenderingContext::texSubImage2D): (WebCore::WebGL2RenderingContext::texSubImage3D): (WebCore::WebGL2RenderingContext::copyTexSubImage3D): (WebCore::WebGL2RenderingContext::compressedTexImage2D): (WebCore::WebGL2RenderingContext::compressedTexImage3D): (WebCore::WebGL2RenderingContext::compressedTexSubImage3D): (WebCore::WebGL2RenderingContext::getFragDataLocation): (WebCore::WebGL2RenderingContext::uniform1ui): (WebCore::WebGL2RenderingContext::uniform2ui): (WebCore::WebGL2RenderingContext::uniform3ui): (WebCore::WebGL2RenderingContext::uniform4ui): (WebCore::WebGL2RenderingContext::uniform1uiv): (WebCore::WebGL2RenderingContext::uniform2uiv): (WebCore::WebGL2RenderingContext::uniform3uiv): (WebCore::WebGL2RenderingContext::uniform4uiv): (WebCore::WebGL2RenderingContext::uniformMatrix2x3fv): (WebCore::WebGL2RenderingContext::uniformMatrix3x2fv): (WebCore::WebGL2RenderingContext::uniformMatrix2x4fv): (WebCore::WebGL2RenderingContext::uniformMatrix4x2fv): (WebCore::WebGL2RenderingContext::uniformMatrix3x4fv): (WebCore::WebGL2RenderingContext::uniformMatrix4x3fv): (WebCore::WebGL2RenderingContext::vertexAttribI4i): (WebCore::WebGL2RenderingContext::vertexAttribI4iv): (WebCore::WebGL2RenderingContext::vertexAttribI4ui): (WebCore::WebGL2RenderingContext::vertexAttribI4uiv): (WebCore::WebGL2RenderingContext::vertexAttribIPointer): (WebCore::WebGL2RenderingContext::drawRangeElements): (WebCore::WebGL2RenderingContext::createQuery): (WebCore::WebGL2RenderingContext::deleteQuery): (WebCore::WebGL2RenderingContext::isQuery): (WebCore::WebGL2RenderingContext::beginQuery): (WebCore::WebGL2RenderingContext::endQuery): (WebCore::WebGL2RenderingContext::getQuery): (WebCore::WebGL2RenderingContext::getQueryParameter): (WebCore::WebGL2RenderingContext::createSampler): (WebCore::WebGL2RenderingContext::deleteSampler): (WebCore::WebGL2RenderingContext::isSampler): (WebCore::WebGL2RenderingContext::bindSampler): (WebCore::WebGL2RenderingContext::samplerParameteri): (WebCore::WebGL2RenderingContext::samplerParameterf): (WebCore::WebGL2RenderingContext::getSamplerParameter): (WebCore::WebGL2RenderingContext::fenceSync): (WebCore::WebGL2RenderingContext::isSync): (WebCore::WebGL2RenderingContext::deleteSync): (WebCore::WebGL2RenderingContext::clientWaitSync): (WebCore::WebGL2RenderingContext::waitSync): (WebCore::WebGL2RenderingContext::getSyncParameter): (WebCore::WebGL2RenderingContext::createTransformFeedback): (WebCore::WebGL2RenderingContext::deleteTransformFeedback): (WebCore::WebGL2RenderingContext::isTransformFeedback): (WebCore::WebGL2RenderingContext::bindTransformFeedback): (WebCore::WebGL2RenderingContext::beginTransformFeedback): (WebCore::WebGL2RenderingContext::endTransformFeedback): (WebCore::WebGL2RenderingContext::transformFeedbackVaryings): (WebCore::WebGL2RenderingContext::getTransformFeedbackVarying): (WebCore::WebGL2RenderingContext::pauseTransformFeedback): (WebCore::WebGL2RenderingContext::resumeTransformFeedback): (WebCore::WebGL2RenderingContext::bindBufferBase): (WebCore::WebGL2RenderingContext::bindBufferRange): (WebCore::WebGL2RenderingContext::getUniformIndices): (WebCore::WebGL2RenderingContext::getUniformBlockIndex): (WebCore::WebGL2RenderingContext::getActiveUniformBlockParameter): (WebCore::WebGL2RenderingContext::getActiveUniformBlockName): (WebCore::WebGL2RenderingContext::uniformBlockBinding): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (236515 => 236516) --- trunk/Source/WebCore/ChangeLog 2018-09-26 19:13:53 UTC (rev 236515) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 19:16:52 UTC (rev 236516) @@ -1,3 +1,88 @@ +2018-09-26 Justin Fan + +WebGL 2: Adding logging to in-progress features +https://bugs.webkit.org/show_bug.cgi?id=189978 + +Reviewed by Jon Lee. + +Logging will allow us to better identify the most in-demand WebGL 2 features and prioritize our efforts. + +No tests as no change
[webkit-changes] [236515] trunk/LayoutTests
Title: [236515] trunk/LayoutTests Revision 236515 Author ab...@igalia.com Date 2018-09-26 12:13:53 -0700 (Wed, 26 Sep 2018) Log Message [GTK] Unreviewed test gardening https://bugs.webkit.org/show_bug.cgi?id=190002 * TestExpectations: * platform/gtk/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/LayoutTests/platform/gtk/TestExpectations Added Paths trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/pointerevents/ trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/pointerevents/extension/ trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification-expected.txt trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/pointerevents/pointerevent_touch-action-illegal-expected.txt trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/pointerevents/pointerevent_touch-action-verification-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (236514 => 236515) --- trunk/LayoutTests/ChangeLog 2018-09-26 18:57:32 UTC (rev 236514) +++ trunk/LayoutTests/ChangeLog 2018-09-26 19:13:53 UTC (rev 236515) @@ -1,3 +1,11 @@ +2018-09-26 Alicia Boya GarcÃa + +[GTK] Unreviewed test gardening +https://bugs.webkit.org/show_bug.cgi?id=190002 + +* TestExpectations: +* platform/gtk/TestExpectations: + 2018-09-26 Truitt Savell Marking two more media-fragments/ tests as flakey after the iOS12 update Modified: trunk/LayoutTests/TestExpectations (236514 => 236515) --- trunk/LayoutTests/TestExpectations 2018-09-26 18:57:32 UTC (rev 236514) +++ trunk/LayoutTests/TestExpectations 2018-09-26 19:13:53 UTC (rev 236515) @@ -2871,4 +2871,6 @@ http/wpt/webauthn/public-key-credential-create-success.https.html [ Skip ] http/wpt/webauthn/public-key-credential-get-failure.https.html [ Skip ] http/wpt/webauthn/public-key-credential-get-success.https.html [ Skip ] -http/wpt/webauthn/idl.https.html [ Skip ] \ No newline at end of file +http/wpt/webauthn/idl.https.html [ Skip ] + +webkit.org/b/189997 imported/w3c/web-platform-tests/resource-timing/resource_timing.worker.html [ Failure ] \ No newline at end of file Modified: trunk/LayoutTests/platform/gtk/TestExpectations (236514 => 236515) --- trunk/LayoutTests/platform/gtk/TestExpectations 2018-09-26 18:57:32 UTC (rev 236514) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2018-09-26 19:13:53 UTC (rev 236515) @@ -2047,6 +2047,8 @@ webkit.org/b/189339 compositing/filters/opacity-change-on-filtered-paints-into-ancestor.html [ ImageOnlyFailure Pass ] +webkit.org/b/190001 transitions/start-transform-transition.html [ Pass Failure ] + # # End of Flaky tests # @@ -3543,6 +3545,21 @@ webkit.org/b/189739 svg/gradients/spreadMethodDiagonal3.svg [ ImageOnlyFailure ] webkit.org/b/189739 svg/gradients/spreadMethodDiagonal4.svg [ ImageOnlyFailure ] +webkit.org/b/189993 http/tests/fileapi/xhr-send-form-data-filename-escaping.html [ Failure ] +webkit.org/b/189993 http/tests/fileapi/xhr-send-form-data-mimetype-normalization.html [ Failure ] +webkit.org/b/189993 http/tests/local/formdata/send-form-data-constructed-from-form-using-open-panel.html [ Failure ] +webkit.org/b/189993 http/tests/misc/form-blob-challenge.html [ Failure ] + +webkit.org/b/189994 fast/files/xhr-response-blob.html [ Failure ] + +webkit.org/b/189995 imported/w3c/web-platform-tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https.html [ Failure ] + +webkit.org/b/18 legacy-animation-engine/animations/animation-direction-reverse.html [ Failure ] +webkit.org/b/18 legacy-animation-engine/animations/transform-non-accelerated.html [ Failure ] +webkit.org/b/18 legacy-animation-engine/transitions/start-transform-transition.html [ Failure ] + +webkit.org/b/19 svg/W3C-SVG-1.1-SE/svgdom-over-01-f.svg [ Failure ] + # # End of non-crashing, non-flaky tests failing # Added: trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification-expected.txt (0 => 236515) --- trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification-expected.txt (rev 0) +++ trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification-expected.txt 2018-09-26 19:13:53 UTC (rev 236515) @@ -0,0 +1,51 @@ +Pointer Events touch-action attribute support + +Test Description: Test will automatically check parsing behaviour of various touch-action
[webkit-changes] [236514] trunk
Title: [236514] trunk Revision 236514 Author keith_mil...@apple.com Date 2018-09-26 11:57:32 -0700 (Wed, 26 Sep 2018) Log Message We should zero unused property storage when rebalancing array storage. https://bugs.webkit.org/show_bug.cgi?id=188151 Reviewed by Michael Saboff. JSTests: * stress/splice-should-zero-property-storage-when-rebalancing.js: Added. Source/_javascript_Core: In unshiftCountSlowCase we sometimes will move property storage to the right even when net adding elements. This can happen because we "balance" the pre/post-capacity in that code so we need to zero the unused property storage. * runtime/JSArray.cpp: (JSC::JSArray::unshiftCountSlowCase): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/JSArray.cpp Added Paths trunk/JSTests/stress/splice-should-zero-property-storage-when-rebalancing.js Diff Modified: trunk/JSTests/ChangeLog (236513 => 236514) --- trunk/JSTests/ChangeLog 2018-09-26 18:45:23 UTC (rev 236513) +++ trunk/JSTests/ChangeLog 2018-09-26 18:57:32 UTC (rev 236514) @@ -1,3 +1,12 @@ +2018-09-26 Keith Miller + +We should zero unused property storage when rebalancing array storage. +https://bugs.webkit.org/show_bug.cgi?id=188151 + +Reviewed by Michael Saboff. + +* stress/splice-should-zero-property-storage-when-rebalancing.js: Added. + 2018-09-20 Yusuke Suzuki [JSC] Optimize Array#lastIndexOf Added: trunk/JSTests/stress/splice-should-zero-property-storage-when-rebalancing.js (0 => 236514) --- trunk/JSTests/stress/splice-should-zero-property-storage-when-rebalancing.js (rev 0) +++ trunk/JSTests/stress/splice-should-zero-property-storage-when-rebalancing.js 2018-09-26 18:57:32 UTC (rev 236514) @@ -0,0 +1,8 @@ +var arr = [4, 5, 6]; +arr.push(10); +arr.pop(); +Object.defineProperty(arr, "foo", { }); + +arr.shift(); +arr.splice(0, 0, 101, 102); +Object.defineProperty(arr, "bar", { }); Modified: trunk/Source/_javascript_Core/ChangeLog (236513 => 236514) --- trunk/Source/_javascript_Core/ChangeLog 2018-09-26 18:45:23 UTC (rev 236513) +++ trunk/Source/_javascript_Core/ChangeLog 2018-09-26 18:57:32 UTC (rev 236514) @@ -1,3 +1,17 @@ +2018-09-26 Keith Miller + +We should zero unused property storage when rebalancing array storage. +https://bugs.webkit.org/show_bug.cgi?id=188151 + +Reviewed by Michael Saboff. + +In unshiftCountSlowCase we sometimes will move property storage to the right even when net adding elements. +This can happen because we "balance" the pre/post-capacity in that code so we need to zero the unused +property storage. + +* runtime/JSArray.cpp: +(JSC::JSArray::unshiftCountSlowCase): + 2018-09-26 Yusuke Suzuki Unreviewed, add scope verification handling Modified: trunk/Source/_javascript_Core/runtime/JSArray.cpp (236513 => 236514) --- trunk/Source/_javascript_Core/runtime/JSArray.cpp 2018-09-26 18:45:23 UTC (rev 236513) +++ trunk/Source/_javascript_Core/runtime/JSArray.cpp 2018-09-26 18:57:32 UTC (rev 236514) @@ -424,13 +424,14 @@ memmove(newButterfly->arrayStorage()->m_vector + count, storage->m_vector, sizeof(JSValue) * usedVectorLength); memmove(newButterfly->propertyStorage() - propertySize, butterfly->propertyStorage() - propertySize, sizeof(JSValue) * propertySize + sizeof(IndexingHeader) + ArrayStorage::sizeFor(0)); +// We don't need to zero the pre-capacity for the concurrent GC because it is not available to use as property storage. +memset(newButterfly->base(0, propertyCapacity), 0, (propertyCapacity - propertySize) * sizeof(JSValue)); + if (allocatedNewStorage) { // We will set the vectorLength to newVectorLength. We populated requiredVectorLength // (usedVectorLength + count), which is less. Clear the difference. for (unsigned i = requiredVectorLength; i < newVectorLength; ++i) newButterfly->arrayStorage()->m_vector[i].clear(); -// We don't need to zero the pre-capacity because it is not available to use as property storage. -memset(newButterfly->base(0, propertyCapacity), 0, (propertyCapacity - propertySize) * sizeof(JSValue)); } } else if ((newAllocBase != butterfly->base(structure)) || (preCapacity != storage->m_indexBias)) { memmove(newButterfly->propertyStorage() - propertyCapacity, butterfly->propertyStorage() - propertyCapacity, sizeof(JSValue) * propertyCapacity + sizeof(IndexingHeader) + ArrayStorage::sizeFor(0)); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236513] trunk/Source/WebKit
Title: [236513] trunk/Source/WebKit Revision 236513 Author cdu...@apple.com Date 2018-09-26 11:45:23 -0700 (Wed, 26 Sep 2018) Log Message Unreviewed, apply post-landing review comments after r236512. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didCreateMainFrame): (WebKit::WebPageProxy::didCreateSubframe): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebPageProxy.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (236512 => 236513) --- trunk/Source/WebKit/ChangeLog 2018-09-26 18:38:26 UTC (rev 236512) +++ trunk/Source/WebKit/ChangeLog 2018-09-26 18:45:23 UTC (rev 236513) @@ -1,5 +1,13 @@ 2018-09-26 Chris Dumez +Unreviewed, apply post-landing review comments after r236512. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::didCreateMainFrame): +(WebKit::WebPageProxy::didCreateSubframe): + +2018-09-26 Chris Dumez + UIProcess should process incoming sync IPC from WebProcess when waiting for a sync IPC reply from it https://bugs.webkit.org/show_bug.cgi?id=189927 Modified: trunk/Source/WebKit/UIProcess/WebPageProxy.cpp (236512 => 236513) --- trunk/Source/WebKit/UIProcess/WebPageProxy.cpp 2018-09-26 18:38:26 UTC (rev 236512) +++ trunk/Source/WebKit/UIProcess/WebPageProxy.cpp 2018-09-26 18:45:23 UTC (rev 236513) @@ -3357,6 +3357,9 @@ void WebPageProxy::didCreateMainFrame(uint64_t frameID) { +// The DecidePolicyForNavigationActionSync IPC is synchronous and may therefore get processed before the DidCreateMainFrame one. +// When this happens, decidePolicyForNavigationActionSync() calls didCreateMainFrame() and we need to ignore the DidCreateMainFrame +// IPC when it later gets processed. if (m_mainFrame && m_mainFrame->frameID() == frameID) return; @@ -3383,6 +3386,9 @@ MESSAGE_CHECK(m_mainFrame); +// The DecidePolicyForNavigationActionSync IPC is synchronous and may therefore get processed before the DidCreateSubframe one. +// When this happens, decidePolicyForNavigationActionSync() calls didCreateSubframe() and we need to ignore the DidCreateSubframe +// IPC when it later gets processed. if (m_process->webFrame(frameID)) return; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236512] trunk/Source/WebKit
Title: [236512] trunk/Source/WebKit Revision 236512 Author cdu...@apple.com Date 2018-09-26 11:38:26 -0700 (Wed, 26 Sep 2018) Log Message UIProcess should process incoming sync IPC from WebProcess when waiting for a sync IPC reply from it https://bugs.webkit.org/show_bug.cgi?id=189927 Reviewed by Geoffrey Garen. UIProcess should process incoming sync IPC from WebProcess when waiting for a sync IPC reply from it in order to avoid deadlocks. This is not an issue currently because the WebProcess does process incoming sync IPC when waiting for a sync IPC reply. However, we plan to change this in the future in order to avoid bugs caused by re-entering WebCore at unsafe times. The reason the UIProcess previously did not do out of order sync IPC process was to avoid processing a synchronous policy decision IPC for a frameID it did not know about yet, due to the DidCreateMainFrame / DidCreateSubframe IPC messages being asynchronous. To address this issue, the decidePolicyForNavigationActionSync IPC handler now calls didCreateMainFrame() / didCreateSubframe() as needed if it does not know about the frame yet. Note that synchronous policy decisions are rare and are currently only needed by initial about:blank and fragment navigations. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didCreateMainFrame): (WebKit::WebPageProxy::didCreateSubframe): (WebKit::WebPageProxy::decidePolicyForNavigationActionAsync): (WebKit::WebPageProxy::decidePolicyForNavigationAction): (WebKit::WebPageProxy::decidePolicyForNavigationActionSync): * UIProcess/WebPageProxy.h: * UIProcess/WebPageProxy.messages.in: * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::createWithCoreMainFrame): (WebKit::WebFrame::createSubframe): Drop DispatchMessageEvenWhenWaitingForSyncReply SendOption when sending the DidCreateMainFrame / DidCreateSubframe IPC. Previously, this SendOption has no effect because the IPC::Connection would have the m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage flag set to true. However, now that we stop setting this flag on the IPC connection from the WebProcess to the UIProcess, it would lead to those IPC messages getting processed out of order with regards to the DecidePolicyForNavigationAsync asynchronous IPC. DidCreateMainFrame would sometimes get processed *after* the DecidePolicyForNavigationAsync IPC and we would not know about the frameID yet. * WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeConnection): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp trunk/Source/WebKit/WebProcess/WebPage/WebFrame.cpp trunk/Source/WebKit/WebProcess/WebProcess.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (236511 => 236512) --- trunk/Source/WebKit/ChangeLog 2018-09-26 18:21:52 UTC (rev 236511) +++ trunk/Source/WebKit/ChangeLog 2018-09-26 18:38:26 UTC (rev 236512) @@ -1,3 +1,50 @@ +2018-09-26 Chris Dumez + +UIProcess should process incoming sync IPC from WebProcess when waiting for a sync IPC reply from it +https://bugs.webkit.org/show_bug.cgi?id=189927 + +Reviewed by Geoffrey Garen. + +UIProcess should process incoming sync IPC from WebProcess when waiting for a sync IPC reply from it +in order to avoid deadlocks. This is not an issue currently because the WebProcess does process +incoming sync IPC when waiting for a sync IPC reply. However, we plan to change this in the future +in order to avoid bugs caused by re-entering WebCore at unsafe times. + +The reason the UIProcess previously did not do out of order sync IPC process was to avoid processing +a synchronous policy decision IPC for a frameID it did not know about yet, due to the DidCreateMainFrame / +DidCreateSubframe IPC messages being asynchronous. To address this issue, the decidePolicyForNavigationActionSync +IPC handler now calls didCreateMainFrame() / didCreateSubframe() as needed if it does not know about +the frame yet. Note that synchronous policy decisions are rare and are currently only needed by initial +about:blank and fragment navigations. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::didCreateMainFrame): +(WebKit::WebPageProxy::didCreateSubframe): +(WebKit::WebPageProxy::decidePolicyForNavigationActionAsync): +(WebKit::WebPageProxy::decidePolicyForNavigationAction): +(WebKit::WebPageProxy::decidePolicyForNavigationActionSync): +* UIProcess/WebPageProxy.h: +* UIProcess/WebPageProxy.messages.in: +* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: +
[webkit-changes] [236511] trunk/Source/WebCore
Title: [236511] trunk/Source/WebCore Revision 236511 Author eric.carl...@apple.com Date 2018-09-26 11:21:52 -0700 (Wed, 26 Sep 2018) Log Message [MediaStream] Clean up RealtimeMediaSource settings change handling https://bugs.webkit.org/show_bug.cgi?id=189998 Reviewed by Youenn Fablet. No new tests, no change in functionality. * platform/mediastream/RealtimeMediaSource.cpp: (WebCore::RealtimeMediaSource::notifySettingsDidChangeObservers): (WebCore::RealtimeMediaSource::setSize): (WebCore::RealtimeMediaSource::setFrameRate): (WebCore::RealtimeMediaSource::setAspectRatio): (WebCore::RealtimeMediaSource::setFacingMode): (WebCore::RealtimeMediaSource::setVolume): (WebCore::RealtimeMediaSource::setSampleRate): (WebCore::RealtimeMediaSource::setSampleSize): (WebCore::RealtimeMediaSource::setEchoCancellation): (WebCore::RealtimeMediaSource::settingsDidChange): Deleted. * platform/mediastream/RealtimeMediaSource.h: * platform/mediastream/mac/AVVideoCaptureSource.mm: (WebCore::AVVideoCaptureSource::settingsDidChange): * platform/mediastream/mac/CoreAudioCaptureSource.cpp: (WebCore::CoreAudioCaptureSource::settingsDidChange): * platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp: (WebCore::DisplayCaptureSourceCocoa::settingsDidChange): * platform/mock/MockRealtimeAudioSource.cpp: (WebCore::MockRealtimeAudioSource::settingsDidChange): * platform/mock/MockRealtimeVideoSource.cpp: (WebCore::MockRealtimeVideoSource::settingsDidChange): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm trunk/Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp trunk/Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (236510 => 236511) --- trunk/Source/WebCore/ChangeLog 2018-09-26 18:20:09 UTC (rev 236510) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 18:21:52 UTC (rev 236511) @@ -1,3 +1,36 @@ +2018-09-26 Eric Carlson + +[MediaStream] Clean up RealtimeMediaSource settings change handling +https://bugs.webkit.org/show_bug.cgi?id=189998 + + +Reviewed by Youenn Fablet. + +No new tests, no change in functionality. + +* platform/mediastream/RealtimeMediaSource.cpp: +(WebCore::RealtimeMediaSource::notifySettingsDidChangeObservers): +(WebCore::RealtimeMediaSource::setSize): +(WebCore::RealtimeMediaSource::setFrameRate): +(WebCore::RealtimeMediaSource::setAspectRatio): +(WebCore::RealtimeMediaSource::setFacingMode): +(WebCore::RealtimeMediaSource::setVolume): +(WebCore::RealtimeMediaSource::setSampleRate): +(WebCore::RealtimeMediaSource::setSampleSize): +(WebCore::RealtimeMediaSource::setEchoCancellation): +(WebCore::RealtimeMediaSource::settingsDidChange): Deleted. +* platform/mediastream/RealtimeMediaSource.h: +* platform/mediastream/mac/AVVideoCaptureSource.mm: +(WebCore::AVVideoCaptureSource::settingsDidChange): +* platform/mediastream/mac/CoreAudioCaptureSource.cpp: +(WebCore::CoreAudioCaptureSource::settingsDidChange): +* platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp: +(WebCore::DisplayCaptureSourceCocoa::settingsDidChange): +* platform/mock/MockRealtimeAudioSource.cpp: +(WebCore::MockRealtimeAudioSource::settingsDidChange): +* platform/mock/MockRealtimeVideoSource.cpp: +(WebCore::MockRealtimeVideoSource::settingsDidChange): + 2018-09-26 Antoine Quint [Web Animations] Ensure renderers with accelerated animations have layers Modified: trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp (236510 => 236511) --- trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp 2018-09-26 18:20:09 UTC (rev 236510) +++ trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp 2018-09-26 18:21:52 UTC (rev 236511) @@ -133,6 +133,10 @@ void RealtimeMediaSource::settingsDidChange(OptionSet) { +} + +void RealtimeMediaSource::notifySettingsDidChangeObservers(OptionSet flags) +{ ASSERT(isMainThread()); if (m_pendingSettingsDidChangeNotification) @@ -139,6 +143,8 @@ return; m_pendingSettingsDidChangeNotification = true; +settingsDidChange(flags); + scheduleDeferredTask([this] { m_pendingSettingsDidChangeNotification = false; forEachObserver([](auto& observer) { @@ -864,7 +870,7 @@ changed.add(RealtimeMediaSourceSettings::Flag::Height); m_size = size; -settingsDidChange(changed); +notifySettingsDidChangeObservers(changed); } void RealtimeMediaSource::setFrameRate(double rate) @@ -873,7
[webkit-changes] [236510] tags/Safari-607.1.7.3
Title: [236510] tags/Safari-607.1.7.3 Revision 236510 Author bshaf...@apple.com Date 2018-09-26 11:20:09 -0700 (Wed, 26 Sep 2018) Log Message Cherry-pick r236288. rdar://problem/43659749 Release assert under RenderView::pageOrViewLogicalHeight https://bugs.webkit.org/show_bug.cgi?id=189798 Reviewed by Simon Fraser. Source/WebCore: Only the mainframe's render view is sized to the page while printing. Use the matching check (see RenderView::layout) when accessing m_pageLogicalSize. Test: printing/crash-while-formatting-subframe-for-printing.html * rendering/RenderView.cpp: (WebCore::RenderView::pageOrViewLogicalHeight const): LayoutTests: * printing/crash-while-formatting-subframe-for-printing-expected.txt: Added. * printing/crash-while-formatting-subframe-for-printing.html: Added. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236288 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths tags/Safari-607.1.7.3/LayoutTests/ChangeLog tags/Safari-607.1.7.3/Source/WebCore/ChangeLog tags/Safari-607.1.7.3/Source/WebCore/rendering/RenderView.cpp Added Paths tags/Safari-607.1.7.3/LayoutTests/printing/crash-while-formatting-subframe-for-printing-expected.txt tags/Safari-607.1.7.3/LayoutTests/printing/crash-while-formatting-subframe-for-printing.html Diff Modified: tags/Safari-607.1.7.3/LayoutTests/ChangeLog (236509 => 236510) --- tags/Safari-607.1.7.3/LayoutTests/ChangeLog 2018-09-26 18:20:06 UTC (rev 236509) +++ tags/Safari-607.1.7.3/LayoutTests/ChangeLog 2018-09-26 18:20:09 UTC (rev 236510) @@ -1,3 +1,42 @@ +2018-09-26 Babak Shafiei + +Cherry-pick r236288. rdar://problem/43659749 + +Release assert under RenderView::pageOrViewLogicalHeight +https://bugs.webkit.org/show_bug.cgi?id=189798 + + +Reviewed by Simon Fraser. + +Source/WebCore: + +Only the mainframe's render view is sized to the page while printing. +Use the matching check (see RenderView::layout) when accessing m_pageLogicalSize. + +Test: printing/crash-while-formatting-subframe-for-printing.html + +* rendering/RenderView.cpp: +(WebCore::RenderView::pageOrViewLogicalHeight const): + +LayoutTests: + +* printing/crash-while-formatting-subframe-for-printing-expected.txt: Added. +* printing/crash-while-formatting-subframe-for-printing.html: Added. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236288 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2018-09-20 Zalan Bujtas + +Release assert under RenderView::pageOrViewLogicalHeight +https://bugs.webkit.org/show_bug.cgi?id=189798 + + +Reviewed by Simon Fraser. + +* printing/crash-while-formatting-subframe-for-printing-expected.txt: Added. +* printing/crash-while-formatting-subframe-for-printing.html: Added. + 2018-09-19 Ms2ger [GTK] Unreviewed test gardening Added: tags/Safari-607.1.7.3/LayoutTests/printing/crash-while-formatting-subframe-for-printing-expected.txt (0 => 236510) --- tags/Safari-607.1.7.3/LayoutTests/printing/crash-while-formatting-subframe-for-printing-expected.txt (rev 0) +++ tags/Safari-607.1.7.3/LayoutTests/printing/crash-while-formatting-subframe-for-printing-expected.txt 2018-09-26 18:20:09 UTC (rev 236510) @@ -0,0 +1 @@ + Added: tags/Safari-607.1.7.3/LayoutTests/printing/crash-while-formatting-subframe-for-printing.html (0 => 236510) --- tags/Safari-607.1.7.3/LayoutTests/printing/crash-while-formatting-subframe-for-printing.html (rev 0) +++ tags/Safari-607.1.7.3/LayoutTests/printing/crash-while-formatting-subframe-for-printing.html 2018-09-26 18:20:09 UTC (rev 236510) @@ -0,0 +1,17 @@ +Unfortunately not 100% repro. + + +PASS if no crash"> + + + +if (window.testRunner) +testRunner.dumpAsText(); + +function runTests() { +setTimeout(function() { +foobar.style.width = "400px"; +}, 0); +window.print(); +} + Modified: tags/Safari-607.1.7.3/Source/WebCore/ChangeLog (236509 => 236510) --- tags/Safari-607.1.7.3/Source/WebCore/ChangeLog 2018-09-26 18:20:06 UTC (rev 236509) +++ tags/Safari-607.1.7.3/Source/WebCore/ChangeLog 2018-09-26 18:20:09 UTC (rev 236510) @@ -1,5 +1,49 @@ 2018-09-26 Babak Shafiei +Cherry-pick r236288. rdar://problem/43659749 + +Release assert under RenderView::pageOrViewLogicalHeight +https://bugs.webkit.org/show_bug.cgi?id=189798 + + +Reviewed by Simon Fraser. + +Source/WebCore: + +Only the mainframe's render view is sized to the page while printing. +Use the matching check (see RenderView::layout) when accessing m_pageLogicalSize. + +Test: printing/crash-while-formatting-subframe-for-printing.html + +* rendering/RenderView.cpp: +(WebCore::RenderView::pageOrViewLogicalHeight const): + +LayoutTests: + +
[webkit-changes] [236509] tags/Safari-607.1.7.3/Source/WebCore
Title: [236509] tags/Safari-607.1.7.3/Source/WebCore Revision 236509 Author bshaf...@apple.com Date 2018-09-26 11:20:06 -0700 (Wed, 26 Sep 2018) Log Message Cherry-pick r236254. rdar://problem/44182860 Fix crash under FontCache::purgeInactiveFontData() when a memory warning fires https://bugs.webkit.org/show_bug.cgi?id=189722 rdar://problem/44182860 Reviewed by Myles C. Maxfield. Hashing of FontPlatformData for cachedFonts() is somewhat broken because CFEqual() on CTFont can return false when the fonts are actually the same, and have the same CFHash(). This can result in multiple entries in cachedFonts() with the same Font. Then in FontCache::purgeInactiveFontData(), the loop that appends fonts to fontsToDelete gets the value by reference, and WTFMoves it into fontsToDelete. This nulls out all the entries sharing the same value, leaving null entries in the hash table. We later crash at font->hasOneRef() when using one of those null entries. Fix by making a copy of the RefPtr in the loop, so the WTFMove doesn't nuke the hash table entries. The entries will get removed at cachedFonts().remove() lower down. * platform/graphics/FontCache.cpp: (WebCore::FontCache::purgeInactiveFontData): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236254 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths tags/Safari-607.1.7.3/Source/WebCore/ChangeLog tags/Safari-607.1.7.3/Source/WebCore/platform/graphics/FontCache.cpp Diff Modified: tags/Safari-607.1.7.3/Source/WebCore/ChangeLog (236508 => 236509) --- tags/Safari-607.1.7.3/Source/WebCore/ChangeLog 2018-09-26 18:16:14 UTC (rev 236508) +++ tags/Safari-607.1.7.3/Source/WebCore/ChangeLog 2018-09-26 18:20:06 UTC (rev 236509) @@ -1,3 +1,54 @@ +2018-09-26 Babak Shafiei + +Cherry-pick r236254. rdar://problem/44182860 + +Fix crash under FontCache::purgeInactiveFontData() when a memory warning fires +https://bugs.webkit.org/show_bug.cgi?id=189722 +rdar://problem/44182860 + +Reviewed by Myles C. Maxfield. + +Hashing of FontPlatformData for cachedFonts() is somewhat broken because CFEqual() on CTFont +can return false when the fonts are actually the same, and have the same CFHash(). This +can result in multiple entries in cachedFonts() with the same Font. + +Then in FontCache::purgeInactiveFontData(), the loop that appends fonts to fontsToDelete +gets the value by reference, and WTFMoves it into fontsToDelete. This nulls out all +the entries sharing the same value, leaving null entries in the hash table. +We later crash at font->hasOneRef() when using one of those null entries. + +Fix by making a copy of the RefPtr in the loop, so the WTFMove doesn't nuke +the hash table entries. The entries will get removed at cachedFonts().remove() lower down. + +* platform/graphics/FontCache.cpp: +(WebCore::FontCache::purgeInactiveFontData): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236254 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2018-09-20 Simon Fraser + +Fix crash under FontCache::purgeInactiveFontData() when a memory warning fires +https://bugs.webkit.org/show_bug.cgi?id=189722 +rdar://problem/44182860 + +Reviewed by Myles C. Maxfield. + +Hashing of FontPlatformData for cachedFonts() is somewhat broken because CFEqual() on CTFont +can return false when the fonts are actually the same, and have the same CFHash(). This +can result in multiple entries in cachedFonts() with the same Font. + +Then in FontCache::purgeInactiveFontData(), the loop that appends fonts to fontsToDelete +gets the value by reference, and WTFMoves it into fontsToDelete. This nulls out all +the entries sharing the same value, leaving null entries in the hash table. +We later crash at font->hasOneRef() when using one of those null entries. + +Fix by making a copy of the RefPtr in the loop, so the WTFMove doesn't nuke +the hash table entries. The entries will get removed at cachedFonts().remove() lower down. + +* platform/graphics/FontCache.cpp: +(WebCore::FontCache::purgeInactiveFontData): + 2018-09-20 Kocsen Chung Revert r235976. rdar://problem/44646452 Modified: tags/Safari-607.1.7.3/Source/WebCore/platform/graphics/FontCache.cpp (236508 => 236509) --- tags/Safari-607.1.7.3/Source/WebCore/platform/graphics/FontCache.cpp 2018-09-26 18:16:14 UTC (rev 236508) +++ tags/Safari-607.1.7.3/Source/WebCore/platform/graphics/FontCache.cpp 2018-09-26 18:20:06 UTC (rev 236509) @@ -376,7 +376,7 @@ while (purgeCount) { Vector, 20> fontsToDelete; -for (auto& font : cachedFonts().values()) { +for (auto font : cachedFonts().values()) { LOG(Fonts, " trying to purge font %s (has
[webkit-changes] [236508] tags/Safari-607.1.7.3/Source
Title: [236508] tags/Safari-607.1.7.3/Source Revision 236508 Author bshaf...@apple.com Date 2018-09-26 11:16:14 -0700 (Wed, 26 Sep 2018) Log Message Versioning. Modified Paths tags/Safari-607.1.7.3/Source/_javascript_Core/Configurations/Version.xcconfig tags/Safari-607.1.7.3/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig tags/Safari-607.1.7.3/Source/WebCore/Configurations/Version.xcconfig tags/Safari-607.1.7.3/Source/WebCore/PAL/Configurations/Version.xcconfig tags/Safari-607.1.7.3/Source/WebInspectorUI/Configurations/Version.xcconfig tags/Safari-607.1.7.3/Source/WebKit/Configurations/Version.xcconfig tags/Safari-607.1.7.3/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: tags/Safari-607.1.7.3/Source/_javascript_Core/Configurations/Version.xcconfig (236507 => 236508) --- tags/Safari-607.1.7.3/Source/_javascript_Core/Configurations/Version.xcconfig 2018-09-26 18:14:27 UTC (rev 236507) +++ tags/Safari-607.1.7.3/Source/_javascript_Core/Configurations/Version.xcconfig 2018-09-26 18:16:14 UTC (rev 236508) @@ -24,7 +24,7 @@ MAJOR_VERSION = 607; MINOR_VERSION = 1; TINY_VERSION = 7; -MICRO_VERSION = 2; +MICRO_VERSION = 3; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-607.1.7.3/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (236507 => 236508) --- tags/Safari-607.1.7.3/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2018-09-26 18:14:27 UTC (rev 236507) +++ tags/Safari-607.1.7.3/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2018-09-26 18:16:14 UTC (rev 236508) @@ -24,7 +24,7 @@ MAJOR_VERSION = 607; MINOR_VERSION = 1; TINY_VERSION = 7; -MICRO_VERSION = 2; +MICRO_VERSION = 3; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-607.1.7.3/Source/WebCore/Configurations/Version.xcconfig (236507 => 236508) --- tags/Safari-607.1.7.3/Source/WebCore/Configurations/Version.xcconfig 2018-09-26 18:14:27 UTC (rev 236507) +++ tags/Safari-607.1.7.3/Source/WebCore/Configurations/Version.xcconfig 2018-09-26 18:16:14 UTC (rev 236508) @@ -24,7 +24,7 @@ MAJOR_VERSION = 607; MINOR_VERSION = 1; TINY_VERSION = 7; -MICRO_VERSION = 2; +MICRO_VERSION = 3; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-607.1.7.3/Source/WebCore/PAL/Configurations/Version.xcconfig (236507 => 236508) --- tags/Safari-607.1.7.3/Source/WebCore/PAL/Configurations/Version.xcconfig 2018-09-26 18:14:27 UTC (rev 236507) +++ tags/Safari-607.1.7.3/Source/WebCore/PAL/Configurations/Version.xcconfig 2018-09-26 18:16:14 UTC (rev 236508) @@ -24,7 +24,7 @@ MAJOR_VERSION = 607; MINOR_VERSION = 1; TINY_VERSION = 7; -MICRO_VERSION = 2; +MICRO_VERSION = 3; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-607.1.7.3/Source/WebInspectorUI/Configurations/Version.xcconfig (236507 => 236508) --- tags/Safari-607.1.7.3/Source/WebInspectorUI/Configurations/Version.xcconfig 2018-09-26 18:14:27 UTC (rev 236507) +++ tags/Safari-607.1.7.3/Source/WebInspectorUI/Configurations/Version.xcconfig 2018-09-26 18:16:14 UTC (rev 236508) @@ -1,7 +1,7 @@ MAJOR_VERSION = 607; MINOR_VERSION = 1; TINY_VERSION = 7; -MICRO_VERSION = 2; +MICRO_VERSION = 3; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-607.1.7.3/Source/WebKit/Configurations/Version.xcconfig (236507 => 236508) --- tags/Safari-607.1.7.3/Source/WebKit/Configurations/Version.xcconfig 2018-09-26 18:14:27 UTC (rev 236507) +++ tags/Safari-607.1.7.3/Source/WebKit/Configurations/Version.xcconfig 2018-09-26 18:16:14 UTC (rev 236508) @@ -24,7 +24,7 @@ MAJOR_VERSION = 607; MINOR_VERSION = 1; TINY_VERSION = 7; -MICRO_VERSION = 2; +MICRO_VERSION = 3; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: tags/Safari-607.1.7.3/Source/WebKitLegacy/mac/Configurations/Version.xcconfig (236507 => 236508) --- tags/Safari-607.1.7.3/Source/WebKitLegacy/mac/Configurations/Version.xcconfig 2018-09-26 18:14:27 UTC (rev 236507) +++ tags/Safari-607.1.7.3/Source/WebKitLegacy/mac/Configurations/Version.xcconfig 2018-09-26 18:16:14 UTC (rev 236508) @@ -24,7 +24,7 @@ MAJOR_VERSION = 607; MINOR_VERSION = 1; TINY_VERSION = 7; -MICRO_VERSION = 2; +MICRO_VERSION = 3; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236507] tags/Safari-607.1.7.3/
Title: [236507] tags/Safari-607.1.7.3/ Revision 236507 Author bshaf...@apple.com Date 2018-09-26 11:14:27 -0700 (Wed, 26 Sep 2018) Log Message Tag Safari-607.1.7.3. Added Paths tags/Safari-607.1.7.3/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236506] releases/Apple
Title: [236506] releases/Apple Revision 236506 Author m...@apple.com Date 2018-09-26 10:44:30 -0700 (Wed, 26 Sep 2018) Log Message Added a tag for Safari Technology Preview release 66. Added Paths releases/Apple/Safari Technology Preview 66/ releases/Apple/Safari Technology Preview 66/ANGLE/ releases/Apple/Safari Technology Preview 66/_javascript_Core/ releases/Apple/Safari Technology Preview 66/WTF/ releases/Apple/Safari Technology Preview 66/WebCore/ releases/Apple/Safari Technology Preview 66/WebInspectorUI/ releases/Apple/Safari Technology Preview 66/WebKit/ releases/Apple/Safari Technology Preview 66/WebKitLegacy/ releases/Apple/Safari Technology Preview 66/bmalloc/ releases/Apple/Safari Technology Preview 66/libwebrtc/ Diff Index: releases/Apple/Safari Technology Preview 66/ANGLE === --- tags/Safari-607.1.7.2/Source/ThirdParty/ANGLE 2018-09-26 16:12:42 UTC (rev 236505) +++ releases/Apple/Safari Technology Preview 66/ANGLE 2018-09-26 17:44:30 UTC (rev 236506) Property changes: releases/Apple/Safari Technology Preview 66/ANGLE Added: allow-tabs +true \ No newline at end of property Added: svn:mergeinfo +/trunk/Source/ThirdParty/ANGLE:53455 \ No newline at end of property Index: releases/Apple/Safari Technology Preview 66/_javascript_Core === --- tags/Safari-607.1.7.2/Source/_javascript_Core 2018-09-26 16:12:42 UTC (rev 236505) +++ releases/Apple/Safari Technology Preview 66/_javascript_Core 2018-09-26 17:44:30 UTC (rev 236506) Property changes: releases/Apple/Safari Technology Preview 66/_javascript_Core Added: svn:mergeinfo +/trunk/Source/_javascript_Core:53455 \ No newline at end of property Index: releases/Apple/Safari Technology Preview 66/WTF === --- tags/Safari-607.1.7.2/Source/WTF 2018-09-26 16:12:42 UTC (rev 236505) +++ releases/Apple/Safari Technology Preview 66/WTF 2018-09-26 17:44:30 UTC (rev 236506) Property changes: releases/Apple/Safari Technology Preview 66/WTF Added: svn:mergeinfo +/trunk/Source/WTF:53455 \ No newline at end of property Index: releases/Apple/Safari Technology Preview 66/WebInspectorUI === --- tags/Safari-607.1.7.2/Source/WebInspectorUI 2018-09-26 16:12:42 UTC (rev 236505) +++ releases/Apple/Safari Technology Preview 66/WebInspectorUI 2018-09-26 17:44:30 UTC (rev 236506) Property changes: releases/Apple/Safari Technology Preview 66/WebInspectorUI Added: svn:mergeinfo +/trunk/Source/WebInspectorUI:53455 \ No newline at end of property Index: releases/Apple/Safari Technology Preview 66/bmalloc === --- tags/Safari-607.1.7.2/Source/bmalloc 2018-09-26 16:12:42 UTC (rev 236505) +++ releases/Apple/Safari Technology Preview 66/bmalloc 2018-09-26 17:44:30 UTC (rev 236506) Property changes: releases/Apple/Safari Technology Preview 66/bmalloc Added: svn:mergeinfo +/trunk/Source/bmalloc:53455 \ No newline at end of property Index: releases/Apple/Safari Technology Preview 66/libwebrtc === --- tags/Safari-607.1.7.2/Source/ThirdParty/libwebrtc 2018-09-26 16:12:42 UTC (rev 236505) +++ releases/Apple/Safari Technology Preview 66/libwebrtc 2018-09-26 17:44:30 UTC (rev 236506) Property changes: releases/Apple/Safari Technology Preview 66/libwebrtc Added: svn:mergeinfo +/trunk/Source/ThirdParty/libwebrtc:53455 \ 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] [236504] trunk/LayoutTests
Title: [236504] trunk/LayoutTests Revision 236504 Author tsav...@apple.com Date 2018-09-26 09:12:34 -0700 (Wed, 26 Sep 2018) Log Message Marking two more media-fragments/ tests as flakey after the iOS12 update https://bugs.webkit.org/show_bug.cgi?id=187557 Unreviewed Test Gardening * platform/ios/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (236503 => 236504) --- trunk/LayoutTests/ChangeLog 2018-09-26 15:59:11 UTC (rev 236503) +++ trunk/LayoutTests/ChangeLog 2018-09-26 16:12:34 UTC (rev 236504) @@ -1,3 +1,12 @@ +2018-09-26 Truitt Savell + +Marking two more media-fragments/ tests as flakey after the iOS12 update +https://bugs.webkit.org/show_bug.cgi?id=187557 + +Unreviewed Test Gardening + +* platform/ios/TestExpectations: + 2018-09-25 Justin Fan WebGL 2 Conformance: primitive restart and draw_primitive_restart WebGL2 sample Modified: trunk/LayoutTests/platform/ios/TestExpectations (236503 => 236504) --- trunk/LayoutTests/platform/ios/TestExpectations 2018-09-26 15:59:11 UTC (rev 236503) +++ trunk/LayoutTests/platform/ios/TestExpectations 2018-09-26 16:12:34 UTC (rev 236504) @@ -3142,7 +3142,9 @@ webkit.org/b/187557 media/media-fragments/TC0005.html [ Pass Failure ] webkit.org/b/187557 media/media-fragments/TC0006.html [ Pass Failure ] +webkit.org/b/187557 media/media-fragments/TC0009.html [ Pass Failure ] webkit.org/b/187557 media/media-fragments/TC0011.html [ Pass Failure ] +webkit.org/b/187557 media/media-fragments/TC0014.html [ Pass Failure ] webkit.org/b/187522 media/media-fragments/TC0015.html [ Pass Failure ] webkit.org/b/187557 media/media-fragments/TC0024.html [ Pass Failure ] webkit.org/b/187557 media/media-fragments/TC0035.html [ Pass Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236505] trunk/Source/JavaScriptCore
Title: [236505] trunk/Source/_javascript_Core Revision 236505 Author yusukesuz...@slowstart.org Date 2018-09-26 09:12:42 -0700 (Wed, 26 Sep 2018) Log Message Unreviewed, add scope verification handling https://bugs.webkit.org/show_bug.cgi?id=189780 * runtime/ArrayPrototype.cpp: (JSC::arrayProtoFuncIndexOf): (JSC::arrayProtoFuncLastIndexOf): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (236504 => 236505) --- trunk/Source/_javascript_Core/ChangeLog 2018-09-26 16:12:34 UTC (rev 236504) +++ trunk/Source/_javascript_Core/ChangeLog 2018-09-26 16:12:42 UTC (rev 236505) @@ -1,3 +1,12 @@ +2018-09-26 Yusuke Suzuki + +Unreviewed, add scope verification handling +https://bugs.webkit.org/show_bug.cgi?id=189780 + +* runtime/ArrayPrototype.cpp: +(JSC::arrayProtoFuncIndexOf): +(JSC::arrayProtoFuncLastIndexOf): + 2018-09-26 Koby Boyango [JSC] offlineasm parser should handle CRLF in asm files Modified: trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp (236504 => 236505) --- trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp 2018-09-26 16:12:34 UTC (rev 236504) +++ trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp 2018-09-26 16:12:42 UTC (rev 236505) @@ -1269,7 +1269,9 @@ JSValue searchElement = exec->argument(0); if (isJSArray(thisObject)) { -if (JSValue result = fastIndexOf(exec, vm, asArray(thisObject), length, searchElement, index)) +JSValue result = fastIndexOf(exec, vm, asArray(thisObject), length, searchElement, index); +RETURN_IF_EXCEPTION(scope, { }); +if (result) return JSValue::encode(result); } @@ -1318,7 +1320,9 @@ JSValue searchElement = exec->argument(0); if (isJSArray(thisObject)) { -if (JSValue result = fastIndexOf(exec, vm, asArray(thisObject), length, searchElement, index)) +JSValue result = fastIndexOf(exec, vm, asArray(thisObject), length, searchElement, index); +RETURN_IF_EXCEPTION(scope, { }); +if (result) return JSValue::encode(result); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236503] trunk/Tools
Title: [236503] trunk/Tools Revision 236503 Author ph...@webkit.org Date 2018-09-26 08:59:11 -0700 (Wed, 26 Sep 2018) Log Message [Flatpak] Bump to apr 1.6.5 Version 1.6.3 is no longer available on Apache's website. Rubber-stamped by Michael Catanzaro. * flatpak/org.webkit.WebKit.yaml: Modified Paths trunk/Tools/ChangeLog trunk/Tools/flatpak/org.webkit.WebKit.yaml Diff Modified: trunk/Tools/ChangeLog (236502 => 236503) --- trunk/Tools/ChangeLog 2018-09-26 15:48:54 UTC (rev 236502) +++ trunk/Tools/ChangeLog 2018-09-26 15:59:11 UTC (rev 236503) @@ -1,3 +1,13 @@ +2018-09-26 Philippe Normand + +[Flatpak] Bump to apr 1.6.5 + +Version 1.6.3 is no longer available on Apache's website. + +Rubber-stamped by Michael Catanzaro. + +* flatpak/org.webkit.WebKit.yaml: + 2018-09-25 Jiewen Tan [WebAuthN] Make AuthenticatorManager Modified: trunk/Tools/flatpak/org.webkit.WebKit.yaml (236502 => 236503) --- trunk/Tools/flatpak/org.webkit.WebKit.yaml 2018-09-26 15:48:54 UTC (rev 236502) +++ trunk/Tools/flatpak/org.webkit.WebKit.yaml 2018-09-26 15:59:11 UTC (rev 236503) @@ -31,8 +31,8 @@ - name: apr sources: - type: archive -url: https://www.apache.org/dist/apr/apr-1.6.3.tar.bz2 -sha256: 131f06d16d7aabd097fa992a33eec2b6af3962f93e6d570a9bd4d85e95993172 +url: https://www.apache.org/dist/apr/apr-1.6.5.tar.bz2 +sha256: a67ca9fcf9c4ff59bce7f428a323c8b5e18667fdea7b0ebad47d194371b0a105 - name: apr-util sources: - type: archive ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236502] trunk/Source/ThirdParty/libwebrtc
Title: [236502] trunk/Source/ThirdParty/libwebrtc Revision 236502 Author ryanhad...@apple.com Date 2018-09-26 08:48:54 -0700 (Wed, 26 Sep 2018) Log Message Unreviewed, rolling out r236498. This wasn't intentionally committed Reverted changeset: "Import libvpx source code" https://bugs.webkit.org/show_bug.cgi?id=189954 https://trac.webkit.org/changeset/236498 Modified Paths trunk/Source/ThirdParty/libwebrtc/ChangeLog Removed Paths trunk/Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/libvpx/VPX.framework/ trunk/Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/libvpx/_iosbuild/ Diff Modified: trunk/Source/ThirdParty/libwebrtc/ChangeLog (236501 => 236502) --- trunk/Source/ThirdParty/libwebrtc/ChangeLog 2018-09-26 14:34:10 UTC (rev 236501) +++ trunk/Source/ThirdParty/libwebrtc/ChangeLog 2018-09-26 15:48:54 UTC (rev 236502) @@ -1,3 +1,15 @@ +2018-09-26 Ryan Haddad + +Unreviewed, rolling out r236498. + +This wasn't intentionally committed + +Reverted changeset: + +"Import libvpx source code" +https://bugs.webkit.org/show_bug.cgi?id=189954 +https://trac.webkit.org/changeset/236498 + 2018-09-25 Youenn Fablet Import libvpx source code ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236501] trunk/Source/WebCore
Title: [236501] trunk/Source/WebCore Revision 236501 Author grao...@webkit.org Date 2018-09-26 07:34:10 -0700 (Wed, 26 Sep 2018) Log Message [Web Animations] Ensure renderers with accelerated animations have layers https://bugs.webkit.org/show_bug.cgi?id=189990 Reviewed by Zalan Bujtas. We have done some work already in webkit.org/b/189784 to prevent never-ending calls to DocumentTimeline::updateAnimations(). This was due to the change made for webkit.org/b/186930 where we queued calls to updateAnimations() in KeyframeEffectReadOnly::applyPendingAcceleratedActions() while we were waiting for a renderer with a layer backing for a given animation target. Instead of doing this, we now ensure renderers always have a layer when they have an accelerated animation applied. No new tests, this is already covered by webanimations/accelerated-animation-with-delay.html and webanimations/opacity-animation-yields-compositing-span.html which respectively check that we can apply an accelerated animation to a non-positioned block and an inline element. * animation/DocumentTimeline.cpp: (WebCore::DocumentTimeline::runningAnimationsForElementAreAllAccelerated const): This method should have been marked const all along and it is now required so it can be called through RenderBox::requiresLayer() and RenderInline::requiresLayer(). (WebCore::DocumentTimeline::runningAnimationsForElementAreAllAccelerated): Deleted. * animation/DocumentTimeline.h: * animation/KeyframeEffectReadOnly.cpp: (WebCore::KeyframeEffectReadOnly::applyPendingAcceleratedActions): Stop enqueuing the accelerated actions in case we're lacking a composited renderer since this situation should no longer arise. * rendering/RenderBox.h: Make requiresLayer() return true if this renderer's element is the target of accelerated animations. * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::hasRunningAcceleratedAnimations const): Query the document timeline, if it exists, to check that this renderer's element has accelerated animations applied. * rendering/RenderBoxModelObject.h: * rendering/RenderInline.h: Make requiresLayer() return true if this renderer's element is the target of accelerated animations. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/DocumentTimeline.cpp trunk/Source/WebCore/animation/DocumentTimeline.h trunk/Source/WebCore/animation/KeyframeEffectReadOnly.cpp trunk/Source/WebCore/rendering/RenderBox.h trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp trunk/Source/WebCore/rendering/RenderBoxModelObject.h trunk/Source/WebCore/rendering/RenderInline.h Diff Modified: trunk/Source/WebCore/ChangeLog (236500 => 236501) --- trunk/Source/WebCore/ChangeLog 2018-09-26 12:06:11 UTC (rev 236500) +++ trunk/Source/WebCore/ChangeLog 2018-09-26 14:34:10 UTC (rev 236501) @@ -1,3 +1,34 @@ +2018-09-26 Antoine Quint + +[Web Animations] Ensure renderers with accelerated animations have layers +https://bugs.webkit.org/show_bug.cgi?id=189990 + + +Reviewed by Zalan Bujtas. + +We have done some work already in webkit.org/b/189784 to prevent never-ending calls to DocumentTimeline::updateAnimations(). This was due to +the change made for webkit.org/b/186930 where we queued calls to updateAnimations() in KeyframeEffectReadOnly::applyPendingAcceleratedActions() +while we were waiting for a renderer with a layer backing for a given animation target. Instead of doing this, we now ensure renderers always +have a layer when they have an accelerated animation applied. + +No new tests, this is already covered by webanimations/accelerated-animation-with-delay.html and webanimations/opacity-animation-yields-compositing-span.html +which respectively check that we can apply an accelerated animation to a non-positioned block and an inline element. + +* animation/DocumentTimeline.cpp: +(WebCore::DocumentTimeline::runningAnimationsForElementAreAllAccelerated const): This method should have been marked const all along and it is +now required so it can be called through RenderBox::requiresLayer() and RenderInline::requiresLayer(). +(WebCore::DocumentTimeline::runningAnimationsForElementAreAllAccelerated): Deleted. +* animation/DocumentTimeline.h: +* animation/KeyframeEffectReadOnly.cpp: +(WebCore::KeyframeEffectReadOnly::applyPendingAcceleratedActions): Stop enqueuing the accelerated actions in case we're lacking a composited renderer +since this situation should no longer arise. +* rendering/RenderBox.h: Make requiresLayer() return true if this renderer's element is the target of accelerated animations. +* rendering/RenderBoxModelObject.cpp: +(WebCore::RenderBoxModelObject::hasRunningAcceleratedAnimations const): Query the document timeline, if it exists, to check that this renderer's element +has accelerated animations applied. +*
[webkit-changes] [236500] trunk/Source/WebKit
Title: [236500] trunk/Source/WebKit Revision 236500 Author an...@apple.com Date 2018-09-26 05:06:11 -0700 (Wed, 26 Sep 2018) Log Message REGRESSION (PSON): White or Black flash occurs when process swapping on navigation on iOS https://bugs.webkit.org/show_bug.cgi?id=189695 Reviewed by Simon Fraser. Freeze the layers on UI process side during process swap. * UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _processWillChange]): Shared work of _processWillSwap and _processDidExit. (-[WKWebView _processWillSwap]): (-[WKWebView _processDidExit]): Split into two functions. Don't reset scroll position and similar when doing navigation swap. * UIProcess/API/Cocoa/WKWebViewInternal.h: * UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.h: * UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm: (WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy): (WebKit::RemoteLayerTreeDrawingAreaProxy::detachRemoteLayerTreeHost): Add to way to detach RemoteLayerTreeHost from the drawing area. Inert RemoteLayerTreeHost will host the frozen layers. (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree): (WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator): (WebKit::RemoteLayerTreeDrawingAreaProxy::hideContentUntilPendingUpdate): (WebKit::RemoteLayerTreeDrawingAreaProxy::hideContentUntilAnyUpdate): (WebKit::RemoteLayerTreeDrawingAreaProxy::prepareForAppSuspension): (WebKit::RemoteLayerTreeDrawingAreaProxy::hasVisibleContent const): (WebKit::RemoteLayerTreeDrawingAreaProxy::layerWithIDForTesting const): * UIProcess/RemoteLayerTree/RemoteLayerTreeHost.h: * UIProcess/RemoteLayerTree/RemoteLayerTreeHost.mm: (WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost): (WebKit::RemoteLayerTreeHost::updateLayerTree): (WebKit::RemoteLayerTreeHost::animationDidStart): (WebKit::RemoteLayerTreeHost::animationDidEnd): (WebKit::RemoteLayerTreeHost::detachFromDrawingArea): Clear the DrawingArea backpointer. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::continueNavigationInNewProcess): (WebKit::WebPageProxy::resetState): Detach and save the current RemoteLayerTreeHost on navigation swap. * UIProcess/WebPageProxy.h: * UIProcess/ios/PageClientImplIOS.mm: (WebKit::PageClientImpl::processWillSwap): Avoid reseting the scroll position. * UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::setAcceleratedCompositingRootLayer): Drop the frozen layers after setting the new root layer. * UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::setAcceleratedCompositingRootLayer): For completeness do this also on Mac (where remote layers are currently not used). Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.h trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeHost.h trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeHost.mm trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm trunk/Source/WebKit/UIProcess/ios/WKContentView.h trunk/Source/WebKit/UIProcess/ios/WKContentView.mm trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm trunk/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm Diff Modified: trunk/Source/WebKit/ChangeLog (236499 => 236500) --- trunk/Source/WebKit/ChangeLog 2018-09-26 10:45:37 UTC (rev 236499) +++ trunk/Source/WebKit/ChangeLog 2018-09-26 12:06:11 UTC (rev 236500) @@ -1,3 +1,71 @@ +2018-09-26 Antti Koivisto + +REGRESSION (PSON): White or Black flash occurs when process swapping on navigation on iOS +https://bugs.webkit.org/show_bug.cgi?id=189695 + + +Reviewed by Simon Fraser. + +Freeze the layers on UI process side during process swap. + +* UIProcess/API/Cocoa/WKWebView.mm: +(-[WKWebView _processWillChange]): + +Shared work of _processWillSwap and _processDidExit. + +(-[WKWebView _processWillSwap]): +(-[WKWebView _processDidExit]): + +Split into two functions. Don't reset scroll position and similar when doing navigation swap. + +* UIProcess/API/Cocoa/WKWebViewInternal.h: +* UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.h: +* UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm: +(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy): +(WebKit::RemoteLayerTreeDrawingAreaProxy::detachRemoteLayerTreeHost): + +Add to way to detach RemoteLayerTreeHost from the drawing area. Inert RemoteLayerTreeHost will host +the frozen layers. + +(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree): +(WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator): +
[webkit-changes] [236499] trunk/Source/JavaScriptCore
Title: [236499] trunk/Source/_javascript_Core Revision 236499 Author commit-qu...@webkit.org Date 2018-09-26 03:45:37 -0700 (Wed, 26 Sep 2018) Log Message [JSC] offlineasm parser should handle CRLF in asm files https://bugs.webkit.org/show_bug.cgi?id=189949 Patch by Koby Boyango on 2018-09-26 Reviewed by Mark Lam. * offlineasm/parser.rb: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/offlineasm/parser.rb Diff Modified: trunk/Source/_javascript_Core/ChangeLog (236498 => 236499) --- trunk/Source/_javascript_Core/ChangeLog 2018-09-26 06:10:10 UTC (rev 236498) +++ trunk/Source/_javascript_Core/ChangeLog 2018-09-26 10:45:37 UTC (rev 236499) @@ -1,3 +1,12 @@ +2018-09-26 Koby Boyango + +[JSC] offlineasm parser should handle CRLF in asm files +https://bugs.webkit.org/show_bug.cgi?id=189949 + +Reviewed by Mark Lam. + +* offlineasm/parser.rb: + 2018-09-20 Yusuke Suzuki [JSC] Optimize Array#lastIndexOf Modified: trunk/Source/_javascript_Core/offlineasm/parser.rb (236498 => 236499) --- trunk/Source/_javascript_Core/offlineasm/parser.rb 2018-09-26 06:10:10 UTC (rev 236498) +++ trunk/Source/_javascript_Core/offlineasm/parser.rb 2018-09-26 10:45:37 UTC (rev 236499) @@ -840,6 +840,17 @@ end end +def readTextFile(fileName) +data = "" + +# On Windows, files may contain CRLF line endings (for example, git client might +# automatically replace \n with \r\n on Windows) which will fail our parsing. +# Thus, we'll just remove all \r from the data (keeping just the \n characters) +data.delete!("\r") + +return data +end + def parseData(data, fileName) parser = Parser.new(data, SourceFile.new(fileName)) parser.parseSequence(nil, "") @@ -846,11 +857,11 @@ end def parse(fileName) -parseData(IO::read(fileName), fileName) +parseData(readTextFile(fileName), fileName) end def parseHash(fileName) -parser = Parser.new(IO::read(fileName), SourceFile.new(fileName)) +parser = Parser.new(readTextFile(fileName), SourceFile.new(fileName)) fileList = parser.parseIncludes(nil, "") fileListHash(fileList) end ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes