[webkit-changes] [236538] trunk/Source/JavaScriptCore

2018-09-26 Thread mark . lam
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

2018-09-26 Thread justin_fan
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

2018-09-26 Thread commit-queue
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/

2018-09-26 Thread kocsen_chung
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

2018-09-26 Thread mark . lam
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

2018-09-26 Thread achristensen
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

2018-09-26 Thread nvasilyev
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

2018-09-26 Thread pvollan
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

2018-09-26 Thread commit-queue
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

2018-09-26 Thread cdumez
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

2018-09-26 Thread achristensen
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

2018-09-26 Thread achristensen
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

2018-09-26 Thread kocsen_chung
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

2018-09-26 Thread kocsen_chung
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

2018-09-26 Thread achristensen
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

2018-09-26 Thread achristensen
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

2018-09-26 Thread rniwa
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

2018-09-26 Thread commit-queue
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

2018-09-26 Thread keith_miller
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

2018-09-26 Thread rniwa
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

2018-09-26 Thread rniwa
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

2018-09-26 Thread cdumez
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

2018-09-26 Thread justin_fan
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

2018-09-26 Thread aboya
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

2018-09-26 Thread keith_miller
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

2018-09-26 Thread cdumez
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

2018-09-26 Thread cdumez
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

2018-09-26 Thread eric . carlson
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

2018-09-26 Thread bshafiei
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

2018-09-26 Thread bshafiei
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

2018-09-26 Thread bshafiei
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/

2018-09-26 Thread bshafiei
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

2018-09-26 Thread mitz
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

2018-09-26 Thread tsavell
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

2018-09-26 Thread yusukesuzuki
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

2018-09-26 Thread philn
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

2018-09-26 Thread ryanhaddad
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

2018-09-26 Thread graouts
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

2018-09-26 Thread antti
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

2018-09-26 Thread commit-queue
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