[webkit-changes] [239370] trunk

2018-12-18 Thread ross . kirsling
Title: [239370] trunk








Revision 239370
Author ross.kirsl...@sony.com
Date 2018-12-18 22:37:46 -0800 (Tue, 18 Dec 2018)


Log Message
Error message for `-x ** y` contains a typo.
https://bugs.webkit.org/show_bug.cgi?id=192832

Reviewed by Saam Barati.

JSTests:

* ChakraCore/test/UnitTestFramework/UnitTestFramework.js:
(assert.assert.return.throws):
* stress/pow-expects-update-_expression_-on-lhs.js:
(throw.new.Error):
Update test expectations which match against the exact error message.

Source/_javascript_Core:

* parser/Parser.cpp:
(JSC::Parser::parseBinaryExpression):
Make corrections to error message: "amiguous" -> "ambiguous", "parenthesis" -> "parentheses"

Modified Paths

trunk/JSTests/ChakraCore/test/UnitTestFramework/UnitTestFramework.js
trunk/JSTests/ChangeLog
trunk/JSTests/stress/pow-expects-update-_expression_-on-lhs.js
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/parser/Parser.cpp




Diff

Modified: trunk/JSTests/ChakraCore/test/UnitTestFramework/UnitTestFramework.js (239369 => 239370)

--- trunk/JSTests/ChakraCore/test/UnitTestFramework/UnitTestFramework.js	2018-12-19 06:10:28 UTC (rev 239369)
+++ trunk/JSTests/ChakraCore/test/UnitTestFramework/UnitTestFramework.js	2018-12-19 06:37:46 UTC (rev 239370)
@@ -366,7 +366,7 @@
 },
 {
 regexp: /Invalid unary operator on the left hand side of exponentiation \(\*\*\) operator/,
-replStr: "Unexpected token '**'. Amiguous unary _expression_ in the left hand side of the exponentiation _expression_; parenthesis must be used to disambiguate the _expression_."
+replStr: "Unexpected token '**'. Ambiguous unary _expression_ in the left hand side of the exponentiation _expression_; parentheses must be used to disambiguate the _expression_."
 },
 {
 regexp: /Assignment to read-only properties is not allowed in strict mode/,


Modified: trunk/JSTests/ChangeLog (239369 => 239370)

--- trunk/JSTests/ChangeLog	2018-12-19 06:10:28 UTC (rev 239369)
+++ trunk/JSTests/ChangeLog	2018-12-19 06:37:46 UTC (rev 239370)
@@ -1,3 +1,16 @@
+2018-12-18  Ross Kirsling  
+
+Error message for `-x ** y` contains a typo.
+https://bugs.webkit.org/show_bug.cgi?id=192832
+
+Reviewed by Saam Barati.
+
+* ChakraCore/test/UnitTestFramework/UnitTestFramework.js:
+(assert.assert.return.throws):
+* stress/pow-expects-update-_expression_-on-lhs.js:
+(throw.new.Error):
+Update test expectations which match against the exact error message.
+
 2018-12-18  Mark Lam  
 
 Gardening: test options fix.


Modified: trunk/JSTests/stress/pow-expects-update-_expression_-on-lhs.js (239369 => 239370)

--- trunk/JSTests/stress/pow-expects-update-_expression_-on-lhs.js	2018-12-19 06:10:28 UTC (rev 239369)
+++ trunk/JSTests/stress/pow-expects-update-_expression_-on-lhs.js	2018-12-19 06:37:46 UTC (rev 239370)
@@ -38,7 +38,7 @@
 {
 return ${token} a ** b;
 }
-`, `SyntaxError: Unexpected token '**'. Amiguous unary _expression_ in the left hand side of the exponentiation _expression_; parenthesis must be used to disambiguate the _expression_.`);
+`, `SyntaxError: Unexpected token '**'. Ambiguous unary _expression_ in the left hand side of the exponentiation _expression_; parentheses must be used to disambiguate the _expression_.`);
 }
 }
 


Modified: trunk/Source/_javascript_Core/ChangeLog (239369 => 239370)

--- trunk/Source/_javascript_Core/ChangeLog	2018-12-19 06:10:28 UTC (rev 239369)
+++ trunk/Source/_javascript_Core/ChangeLog	2018-12-19 06:37:46 UTC (rev 239370)
@@ -1,3 +1,14 @@
+2018-12-18  Ross Kirsling  
+
+Error message for `-x ** y` contains a typo.
+https://bugs.webkit.org/show_bug.cgi?id=192832
+
+Reviewed by Saam Barati.
+
+* parser/Parser.cpp:
+(JSC::Parser::parseBinaryExpression):
+Make corrections to error message: "amiguous" -> "ambiguous", "parenthesis" -> "parentheses"
+
 2018-12-18  Saam Barati  
 
 Update ARM64EHash


Modified: trunk/Source/_javascript_Core/parser/Parser.cpp (239369 => 239370)

--- trunk/Source/_javascript_Core/parser/Parser.cpp	2018-12-19 06:10:28 UTC (rev 239369)
+++ trunk/Source/_javascript_Core/parser/Parser.cpp	2018-12-19 06:37:46 UTC (rev 239370)
@@ -3886,7 +3886,7 @@
 //  Check this.
 // If the binary operator <> has higher precedence than one of "**", this check does not work.
 // But it's OK for ** because the operator "**" has the highest operator precedence in the binary operators.
-failIfTrue(match(POW) && isUnaryOpExcludingUpdateOp(leadingTokenTypeForUnaryExpression), "Amiguous unary _expression_ in the left hand side of the exponentiation _expression_; parenthesis must be used to disambiguate the _expression_");
+failIfTrue(match(POW) && 

[webkit-changes] [239369] trunk

2018-12-18 Thread wenson_hsieh
Title: [239369] trunk








Revision 239369
Author wenson_hs...@apple.com
Date 2018-12-18 22:10:28 -0800 (Tue, 18 Dec 2018)


Log Message
[iOS] A copied text selection is pasted as a web archive attachment in the entry view in Messages
https://bugs.webkit.org/show_bug.cgi?id=192842


Reviewed by Tim Horton.

Source/WebCore:

Temporarily revert a behavior change introduced by r238661, where we now add "com.apple.webarchive" as a
registered UTI when dragging or copying a text selection. This broke the Messages app on iOS, which currently
inserts a copied or dragged text selection from WebKit-based views as a web archive file attachment. A fix for
this is internally tracked in .

* platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::write):

Tools:

Adjusts an existing API test to verify that "com.apple.webarchive" is not one of the types registered to the
item provider when dragging a rich text selection.

* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/ios/PlatformPasteboardIOS.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (239368 => 239369)

--- trunk/Source/WebCore/ChangeLog	2018-12-19 05:31:11 UTC (rev 239368)
+++ trunk/Source/WebCore/ChangeLog	2018-12-19 06:10:28 UTC (rev 239369)
@@ -1,3 +1,19 @@
+2018-12-18  Wenson Hsieh  
+
+[iOS] A copied text selection is pasted as a web archive attachment in the entry view in Messages
+https://bugs.webkit.org/show_bug.cgi?id=192842
+
+
+Reviewed by Tim Horton.
+
+Temporarily revert a behavior change introduced by r238661, where we now add "com.apple.webarchive" as a
+registered UTI when dragging or copying a text selection. This broke the Messages app on iOS, which currently
+inserts a copied or dragged text selection from WebKit-based views as a web archive file attachment. A fix for
+this is internally tracked in .
+
+* platform/ios/PlatformPasteboardIOS.mm:
+(WebCore::PlatformPasteboard::write):
+
 2018-12-18  Michael Catanzaro  
 
 Unreviewed, add a missing UNUSED_PARAM()


Modified: trunk/Source/WebCore/platform/ios/PlatformPasteboardIOS.mm (239368 => 239369)

--- trunk/Source/WebCore/platform/ios/PlatformPasteboardIOS.mm	2018-12-19 05:31:11 UTC (rev 239368)
+++ trunk/Source/WebCore/platform/ios/PlatformPasteboardIOS.mm	2018-12-19 06:10:28 UTC (rev 239369)
@@ -369,10 +369,13 @@
 
 if (content.dataInWebArchiveFormat) {
 auto webArchiveData = content.dataInWebArchiveFormat->createNSData();
-#if !PLATFORM(IOSMAC)
-[representationsToRegister addData:webArchiveData.get() forType:WebArchivePboardType];
+#if PLATFORM(IOSMAC)
+NSString *webArchiveType = (__bridge NSString *)kUTTypeWebArchive;
+#else
+// FIXME: We should additionally register "com.apple.webarchive" once  is fixed.
+NSString *webArchiveType = WebArchivePboardType;
 #endif
-[representationsToRegister addData:webArchiveData.get() forType:(__bridge NSString *)kUTTypeWebArchive];
+[representationsToRegister addData:webArchiveData.get() forType:webArchiveType];
 }
 
 if (content.dataInAttributedStringFormat) {


Modified: trunk/Tools/ChangeLog (239368 => 239369)

--- trunk/Tools/ChangeLog	2018-12-19 05:31:11 UTC (rev 239368)
+++ trunk/Tools/ChangeLog	2018-12-19 06:10:28 UTC (rev 239369)
@@ -1,3 +1,16 @@
+2018-12-18  Wenson Hsieh  
+
+[iOS] A copied text selection is pasted as a web archive attachment in the entry view in Messages
+https://bugs.webkit.org/show_bug.cgi?id=192842
+
+
+Reviewed by Tim Horton.
+
+Adjusts an existing API test to verify that "com.apple.webarchive" is not one of the types registered to the
+item provider when dragging a rich text selection.
+
+* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
+
 2018-12-18  David Quesada  
 
 REGRESSION: [iOS] API test TestWebKitAPI._WKDownload.OriginatingWebView is a flaky failure


Modified: trunk/Tools/TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm (239368 => 239369)

--- trunk/Tools/TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm	2018-12-19 05:31:11 UTC (rev 239368)
+++ trunk/Tools/TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm	2018-12-19 06:10:28 UTC (rev 239369)
@@ -372,6 +372,9 @@
 checkSelectionRectsWithLogging(@[ makeCGRectValue(1, 201, 961, 227) ], [simulator finalSelectionRects]);
 checkRichTextTypePrecedesPlainTextType(simulator.get());
 EXPECT_TRUE([simulator lastKnownDropProposal].precise);
+
+// FIXME: Once  is fixed, we should add "com.apple.webarchive" as a registered pasteboard type and rebaseline this expectation.
+EXPECT_FALSE([[[simulator sourceItemProviders].firstObject registeredTypeIdentifiers] containsObject:(__bridge NSString *)kUTTypeWebArchive]);
 }
 
 TEST(DragAndDropTests, ContentEditableToTextarea)


[webkit-changes] [239368] trunk/Source/WebCore

2018-12-18 Thread mcatanzaro
Title: [239368] trunk/Source/WebCore








Revision 239368
Author mcatanz...@igalia.com
Date 2018-12-18 21:31:11 -0800 (Tue, 18 Dec 2018)


Log Message
Unreviewed, add a missing UNUSED_PARAM()

* Modules/mediarecorder/MediaRecorder.cpp:
(WebCore::MediaRecorder::getPrivateImpl):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediarecorder/MediaRecorder.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (239367 => 239368)

--- trunk/Source/WebCore/ChangeLog	2018-12-19 05:01:04 UTC (rev 239367)
+++ trunk/Source/WebCore/ChangeLog	2018-12-19 05:31:11 UTC (rev 239368)
@@ -1,3 +1,10 @@
+2018-12-18  Michael Catanzaro  
+
+Unreviewed, add a missing UNUSED_PARAM()
+
+* Modules/mediarecorder/MediaRecorder.cpp:
+(WebCore::MediaRecorder::getPrivateImpl):
+
 2018-12-18  Justin Michaud  
 
 Update CSS Properties and Values API to use new cycle fallback behaviour


Modified: trunk/Source/WebCore/Modules/mediarecorder/MediaRecorder.cpp (239367 => 239368)

--- trunk/Source/WebCore/Modules/mediarecorder/MediaRecorder.cpp	2018-12-19 05:01:04 UTC (rev 239367)
+++ trunk/Source/WebCore/Modules/mediarecorder/MediaRecorder.cpp	2018-12-19 05:31:11 UTC (rev 239368)
@@ -66,8 +66,10 @@
 
 #if PLATFORM(COCOA)
 return MediaRecorderPrivateAVFImpl::create(stream);
+#else
+UNUSED_PARAM(stream);
+return nullptr;
 #endif
-return nullptr;
 }
 
 MediaRecorder::MediaRecorder(Document& document, Ref&& stream, std::unique_ptr&& privateImpl, Options&& option)






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239367] trunk/Source/WebKit

2018-12-18 Thread achristensen
Title: [239367] trunk/Source/WebKit








Revision 239367
Author achristen...@apple.com
Date 2018-12-18 21:01:04 -0800 (Tue, 18 Dec 2018)


Log Message
REGRESSION(r239134) iOS safe browsing warning unable to show details
https://bugs.webkit.org/show_bug.cgi?id=192837

Reviewed by Tim Horton.

* UIProcess/Cocoa/WKSafeBrowsingWarning.mm:
(-[WKSafeBrowsingWarning addContent]):
I had a fragile design that relied on the internal view heirarchy structure of UIScrollView,
which I changed in r239134 by introducing a layout which changed where its scrollbars were in the view heirarchy.
I now have a more robust design that saves a WeakObjCPtr to the view I need to traverse to.
Testing is problematic because this had to do with scrollbars and UIScrollView internals which seem to behave
differently in TestWebKitAPI, but I verified manually that this fixes the issue.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.h
trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (239366 => 239367)

--- trunk/Source/WebKit/ChangeLog	2018-12-19 04:35:34 UTC (rev 239366)
+++ trunk/Source/WebKit/ChangeLog	2018-12-19 05:01:04 UTC (rev 239367)
@@ -1,3 +1,18 @@
+2018-12-18  Alex Christensen  
+
+REGRESSION(r239134) iOS safe browsing warning unable to show details
+https://bugs.webkit.org/show_bug.cgi?id=192837
+
+Reviewed by Tim Horton.
+
+* UIProcess/Cocoa/WKSafeBrowsingWarning.mm:
+(-[WKSafeBrowsingWarning addContent]):
+I had a fragile design that relied on the internal view heirarchy structure of UIScrollView,
+which I changed in r239134 by introducing a layout which changed where its scrollbars were in the view heirarchy.
+I now have a more robust design that saves a WeakObjCPtr to the view I need to traverse to.
+Testing is problematic because this had to do with scrollbars and UIScrollView internals which seem to behave
+differently in TestWebKitAPI, but I verified manually that this fixes the issue.
+
 2018-12-18  Fujii Hironori  
 
 [Win][Clang] Fix compilation warnings under Source/WebKit directory


Modified: trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.h (239366 => 239367)

--- trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.h	2018-12-19 04:35:34 UTC (rev 239366)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.h	2018-12-19 05:01:04 UTC (rev 239367)
@@ -43,9 +43,11 @@
 OBJC_CLASS WKSafeBrowsingTextView;
 
 #if PLATFORM(MAC)
+using ViewType = NSView;
 using RectType = NSRect;
 @interface WKSafeBrowsingWarning : NSView
 #else
+using ViewType = UIView;
 using RectType = CGRect;
 @interface WKSafeBrowsingWarning : UIScrollView
 #endif
@@ -54,6 +56,7 @@
 CompletionHandler&&)> _completionHandler;
 RefPtr _warning;
 WeakObjCPtr _details;
+WeakObjCPtr _box;
 }
 
 - (instancetype)initWithFrame:(RectType)frame safeBrowsingWarning:(const WebKit::SafeBrowsingWarning&)warning completionHandler:(CompletionHandler&&)>&&)completionHandler;


Modified: trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.mm (239366 => 239367)

--- trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.mm	2018-12-19 04:35:34 UTC (rev 239366)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WKSafeBrowsingWarning.mm	2018-12-19 05:01:04 UTC (rev 239367)
@@ -50,7 +50,6 @@
 using TextViewType = NSTextView;
 using ButtonType = NSButton;
 using AlignmentType = NSLayoutAttribute;
-using ViewType = NSView;
 using SizeType = NSSize;
 #else
 using ColorType = UIColor;
@@ -58,7 +57,6 @@
 using TextViewType = UITextView;
 using ButtonType = UIButton;
 using AlignmentType = UIStackViewAlignment;
-using ViewType = UIView;
 using SizeType = CGSize;
 #endif
 
@@ -299,6 +297,7 @@
 auto showDetails = makeButton(WarningItem::ShowDetailsButton, self, @selector(showDetailsClicked));
 auto goBack = makeButton(WarningItem::GoBackButton, self, @selector(goBackClicked));
 auto box = [[ViewType new] autorelease];
+_box = box;
 setBackground(box, colorForItem(WarningItem::BoxBackground, self));
 box.layer.cornerRadius = boxCornerRadius;
 
@@ -367,7 +366,7 @@
 
 - (void)showDetailsClicked
 {
-ViewType *box = self.subviews.lastObject;
+ViewType *box = _box.get().get();
 ButtonType *showDetails = box.subviews.lastObject;
 [showDetails removeFromSuperview];
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239366] trunk/Source/WebKit

2018-12-18 Thread Hironori . Fujii
Title: [239366] trunk/Source/WebKit








Revision 239366
Author hironori.fu...@sony.com
Date 2018-12-18 20:35:34 -0800 (Tue, 18 Dec 2018)


Log Message
[Win][Clang] Fix compilation warnings under Source/WebKit directory
https://bugs.webkit.org/show_bug.cgi?id=192695

Reviewed by Alex Christensen.

* NetworkProcess/cache/NetworkCacheData.cpp:
(makeSalt): Enclosed by #if !OS(WINDOWS).
* NetworkProcess/cache/NetworkCacheFileSystem.cpp:
(WebKit::NetworkCache::directoryEntryType): Ditto.
* Platform/win/ModuleWin.cpp:
(WebKit::Module::platformFunctionPointer const): Cast a function pointer with reinterpret_cast().
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::DrawingMonitor::DrawingMonitor):
Moved the initializer of m_webPage in order to be encluded by #if PLATFORM(GTK).
* UIProcess/DrawingAreaProxyImpl.h: Ditto.
* UIProcess/Launcher/win/ProcessLauncherWin.cpp:
(WebKit::processName): Removed the duplicated 'const' type qualifier.
* UIProcess/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::platformAttach): Removed an unused variable.
(WebKit::WebInspectorProxy::platformDetach): Ditto.
* UIProcess/win/WebPopupMenuProxyWin.cpp: Ditto.
* UIProcess/win/WebView.cpp:
(WebKit::WebView::paint): Ditto.
(WebKit::WebPopupMenu::setUpPlatformData): Ditto.
* UIProcess/win/WebPopupMenuProxyWin.h: Marked override methods with 'override'.
* WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.h: Ditto.
* WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: Removed an unused variable.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheData.cpp
trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheFileSystem.cpp
trunk/Source/WebKit/Platform/win/ModuleWin.cpp
trunk/Source/WebKit/UIProcess/DrawingAreaProxyImpl.cpp
trunk/Source/WebKit/UIProcess/DrawingAreaProxyImpl.h
trunk/Source/WebKit/UIProcess/Launcher/win/ProcessLauncherWin.cpp
trunk/Source/WebKit/UIProcess/win/WebInspectorProxyWin.cpp
trunk/Source/WebKit/UIProcess/win/WebPopupMenuProxyWin.cpp
trunk/Source/WebKit/UIProcess/win/WebPopupMenuProxyWin.h
trunk/Source/WebKit/UIProcess/win/WebView.cpp
trunk/Source/WebKit/WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.h
trunk/Source/WebKit/WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (239365 => 239366)

--- trunk/Source/WebKit/ChangeLog	2018-12-19 03:21:15 UTC (rev 239365)
+++ trunk/Source/WebKit/ChangeLog	2018-12-19 04:35:34 UTC (rev 239366)
@@ -1,3 +1,33 @@
+2018-12-18  Fujii Hironori  
+
+[Win][Clang] Fix compilation warnings under Source/WebKit directory
+https://bugs.webkit.org/show_bug.cgi?id=192695
+
+Reviewed by Alex Christensen.
+
+* NetworkProcess/cache/NetworkCacheData.cpp:
+(makeSalt): Enclosed by #if !OS(WINDOWS).
+* NetworkProcess/cache/NetworkCacheFileSystem.cpp:
+(WebKit::NetworkCache::directoryEntryType): Ditto.
+* Platform/win/ModuleWin.cpp:
+(WebKit::Module::platformFunctionPointer const): Cast a function pointer with reinterpret_cast().
+* UIProcess/DrawingAreaProxyImpl.cpp:
+(WebKit::DrawingAreaProxyImpl::DrawingMonitor::DrawingMonitor):
+Moved the initializer of m_webPage in order to be encluded by #if PLATFORM(GTK).
+* UIProcess/DrawingAreaProxyImpl.h: Ditto.
+* UIProcess/Launcher/win/ProcessLauncherWin.cpp:
+(WebKit::processName): Removed the duplicated 'const' type qualifier.
+* UIProcess/win/WebInspectorProxyWin.cpp:
+(WebKit::WebInspectorProxy::platformAttach): Removed an unused variable.
+(WebKit::WebInspectorProxy::platformDetach): Ditto.
+* UIProcess/win/WebPopupMenuProxyWin.cpp: Ditto.
+* UIProcess/win/WebView.cpp:
+(WebKit::WebView::paint): Ditto.
+(WebKit::WebPopupMenu::setUpPlatformData): Ditto.
+* UIProcess/win/WebPopupMenuProxyWin.h: Marked override methods with 'override'.
+* WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.h: Ditto.
+* WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: Removed an unused variable.
+
 2018-12-18  Wenson Hsieh  
 
 [macOS] fast/forms/datalist/datalist-textinput-suggestions-order.html sometimes crashes after r239337


Modified: trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheData.cpp (239365 => 239366)

--- trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheData.cpp	2018-12-19 03:21:15 UTC (rev 239365)
+++ trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheData.cpp	2018-12-19 04:35:34 UTC (rev 239366)
@@ -142,6 +142,7 @@
 return !memcmp(a.data(), b.data(), a.size());
 }
 
+#if !OS(WINDOWS)
 static Salt makeSalt()
 {
 Salt salt;
@@ -150,6 +151,7 @@
 *reinterpret_cast([4]) = cryptographicallyRandomNumber();
 return salt;
 }
+#endif
 
 std::optional readOrMakeSalt(const String& path)
 {


Modified: trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheFileSystem.cpp (239365 => 239366)

--- 

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

2018-12-18 Thread sbarati
Title: [239364] trunk/Source/_javascript_Core








Revision 239364
Author sbar...@apple.com
Date 2018-12-18 18:27:00 -0800 (Tue, 18 Dec 2018)


Log Message
Update ARM64EHash
https://bugs.webkit.org/show_bug.cgi?id=192823


Reviewed by Mark Lam.

* assembler/ARM64Assembler.h:
(JSC::ARM64Assembler::ARM64Assembler):
* assembler/AbstractMacroAssembler.h:
(JSC::AbstractMacroAssembler::AbstractMacroAssembler):
* assembler/AssemblerBuffer.h:
(JSC::ARM64EHash::update):
(JSC::ARM64EHash::finalHash const):
(JSC::AssemblerBuffer::AssemblerBuffer):
(JSC::AssemblerBuffer::putIntegralUnchecked):
(JSC::ARM64EHash::ARM64EHash): Deleted.
(JSC::ARM64EHash::hash const): Deleted.
(JSC::ARM64EHash::randomSeed const): Deleted.
* assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::copyCompactAndLinkCode):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/assembler/ARM64Assembler.h
trunk/Source/_javascript_Core/assembler/AbstractMacroAssembler.h
trunk/Source/_javascript_Core/assembler/AssemblerBuffer.h
trunk/Source/_javascript_Core/assembler/LinkBuffer.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (239363 => 239364)

--- trunk/Source/_javascript_Core/ChangeLog	2018-12-19 02:11:58 UTC (rev 239363)
+++ trunk/Source/_javascript_Core/ChangeLog	2018-12-19 02:27:00 UTC (rev 239364)
@@ -1,3 +1,26 @@
+2018-12-18  Saam Barati  
+
+Update ARM64EHash
+https://bugs.webkit.org/show_bug.cgi?id=192823
+
+
+Reviewed by Mark Lam.
+
+* assembler/ARM64Assembler.h:
+(JSC::ARM64Assembler::ARM64Assembler):
+* assembler/AbstractMacroAssembler.h:
+(JSC::AbstractMacroAssembler::AbstractMacroAssembler):
+* assembler/AssemblerBuffer.h:
+(JSC::ARM64EHash::update):
+(JSC::ARM64EHash::finalHash const):
+(JSC::AssemblerBuffer::AssemblerBuffer):
+(JSC::AssemblerBuffer::putIntegralUnchecked):
+(JSC::ARM64EHash::ARM64EHash): Deleted.
+(JSC::ARM64EHash::hash const): Deleted.
+(JSC::ARM64EHash::randomSeed const): Deleted.
+* assembler/LinkBuffer.cpp:
+(JSC::LinkBuffer::copyCompactAndLinkCode):
+
 2018-12-18  Mark Lam  
 
 JSON.stringify() should throw OOM on StringBuilder overflows.


Modified: trunk/Source/_javascript_Core/assembler/ARM64Assembler.h (239363 => 239364)

--- trunk/Source/_javascript_Core/assembler/ARM64Assembler.h	2018-12-19 02:11:58 UTC (rev 239363)
+++ trunk/Source/_javascript_Core/assembler/ARM64Assembler.h	2018-12-19 02:27:00 UTC (rev 239364)
@@ -326,17 +326,9 @@
 static constexpr bool isZr(RegisterID reg) { return ARM64Registers::isZr(reg); }
 
 public:
-ARM64Assembler(
-#if CPU(ARM64E)
-unsigned randomNumber
-#endif 
-)
+ARM64Assembler()
 : m_indexOfLastWatchpoint(INT_MIN)
 , m_indexOfTailOfLastWatchpoint(INT_MIN)
-#if CPU(ARM64E)
-, m_buffer(randomNumber)
-#endif
-
 {
 }
 


Modified: trunk/Source/_javascript_Core/assembler/AbstractMacroAssembler.h (239363 => 239364)

--- trunk/Source/_javascript_Core/assembler/AbstractMacroAssembler.h	2018-12-19 02:11:58 UTC (rev 239363)
+++ trunk/Source/_javascript_Core/assembler/AbstractMacroAssembler.h	2018-12-19 02:27:00 UTC (rev 239364)
@@ -986,11 +986,7 @@
 protected:
 AbstractMacroAssembler()
 : m_randomSource(0)
-#if CPU(ARM64E)
-, m_assembler(random())
-#else
 , m_assembler()
-#endif
 {
 invalidateAllTempRegisters();
 }


Modified: trunk/Source/_javascript_Core/assembler/AssemblerBuffer.h (239363 => 239364)

--- trunk/Source/_javascript_Core/assembler/AssemblerBuffer.h	2018-12-19 02:11:58 UTC (rev 239363)
+++ trunk/Source/_javascript_Core/assembler/AssemblerBuffer.h	2018-12-19 02:27:00 UTC (rev 239364)
@@ -149,34 +149,31 @@
 #if CPU(ARM64E)
 class ARM64EHash {
 public:
-ARM64EHash(unsigned randomNumber)
-: m_hash(randomNumber)
-, m_randomSeed(randomNumber)
-{ }
-ALWAYS_INLINE void update(unsigned value, uintptr_t index)
+ARM64EHash() = default;
+ALWAYS_INLINE void update(uint32_t value)
 {
-m_hash = tagInt((static_cast(value) + m_hash) ^ (m_hash >> 32), static_cast(index));
+uint64_t input = value ^ m_hash;
+uint64_t a = static_cast(tagInt(input, static_cast(0)) >> 39);
+uint64_t b = tagInt(input, static_cast(0xb7e151628aed2a6a)) >> 23;
+m_hash = a | b;
 }
-uintptr_t hash() const { return m_hash; }
-unsigned randomSeed() const { return m_randomSeed; }
+uint32_t finalHash() const
+{
+uint64_t hash = m_hash;
+uint64_t a = static_cast(tagInt(hash, static_cast(0xbf7158809cf4f3c7)) >> 39);
+uint64_t b = tagInt(hash, static_cast(0x62e7160f38b4da56)) >> 23;
+return static_cast(a | b);
+}
 private:
-uintptr_t m_hash;
-unsigned m_randomSeed;
+  

[webkit-changes] [239363] trunk/Source/WebKit

2018-12-18 Thread wenson_hsieh
Title: [239363] trunk/Source/WebKit








Revision 239363
Author wenson_hs...@apple.com
Date 2018-12-18 18:11:58 -0800 (Tue, 18 Dec 2018)


Log Message
[macOS] fast/forms/datalist/datalist-textinput-suggestions-order.html sometimes crashes after r239337
https://bugs.webkit.org/show_bug.cgi?id=192836


Reviewed by Tim Horton.

r239337 exposed a subtle issue in the implementation of `-[WKDataListSuggestionsView updateWithInformation:]`,
wherein we might end up recomputing information for table view cells at rows that no longer exist. This currently
happens because we first set the datalist's `_suggestions`, then change the table view's frame, and then finally
reload the table view; however, in the case where the number of suggestions decreased and the frame changed
(which prompts AppKit to ask us again for table cell views), we'll attempt to access an out-of-bounds index in
the `_suggestions` vector.

To address this, we change our suggestions and immediately reload the table view before updating `NSTableView`'s
frame, so that we only provide table view cells for rows that actually correspond to items in `_suggestions`.

* UIProcess/mac/WebDataListSuggestionsDropdownMac.mm:
(-[WKDataListSuggestionsView updateWithInformation:]):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/mac/WebDataListSuggestionsDropdownMac.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (239362 => 239363)

--- trunk/Source/WebKit/ChangeLog	2018-12-19 01:25:52 UTC (rev 239362)
+++ trunk/Source/WebKit/ChangeLog	2018-12-19 02:11:58 UTC (rev 239363)
@@ -1,3 +1,24 @@
+2018-12-18  Wenson Hsieh  
+
+[macOS] fast/forms/datalist/datalist-textinput-suggestions-order.html sometimes crashes after r239337
+https://bugs.webkit.org/show_bug.cgi?id=192836
+
+
+Reviewed by Tim Horton.
+
+r239337 exposed a subtle issue in the implementation of `-[WKDataListSuggestionsView updateWithInformation:]`,
+wherein we might end up recomputing information for table view cells at rows that no longer exist. This currently
+happens because we first set the datalist's `_suggestions`, then change the table view's frame, and then finally
+reload the table view; however, in the case where the number of suggestions decreased and the frame changed
+(which prompts AppKit to ask us again for table cell views), we'll attempt to access an out-of-bounds index in
+the `_suggestions` vector.
+
+To address this, we change our suggestions and immediately reload the table view before updating `NSTableView`'s
+frame, so that we only provide table view cells for rows that actually correspond to items in `_suggestions`.
+
+* UIProcess/mac/WebDataListSuggestionsDropdownMac.mm:
+(-[WKDataListSuggestionsView updateWithInformation:]):
+
 2018-12-18  Jiewen Tan  
 
 [Mac] Layout Test http/wpt/webauthn/public-key-credential-create-success-hid.https.html and http/wpt/webauthn/public-key-credential-get-success-hid.https.html are flaky


Modified: trunk/Source/WebKit/UIProcess/mac/WebDataListSuggestionsDropdownMac.mm (239362 => 239363)

--- trunk/Source/WebKit/UIProcess/mac/WebDataListSuggestionsDropdownMac.mm	2018-12-19 01:25:52 UTC (rev 239362)
+++ trunk/Source/WebKit/UIProcess/mac/WebDataListSuggestionsDropdownMac.mm	2018-12-19 02:11:58 UTC (rev 239363)
@@ -346,9 +346,10 @@
 - (void)updateWithInformation:(WebCore::DataListSuggestionInformation&&)information
 {
 _suggestions = WTFMove(information.suggestions);
+[_table reload];
+
 [_enclosingWindow setFrame:[self dropdownRectForElementRect:information.elementRect] display:YES];
 [_table setVisibleRect:[_enclosingWindow frame]];
-[_table reload];
 }
 
 - (void)moveSelectionByDirection:(const String&)direction






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239362] trunk/Source/WebKit

2018-12-18 Thread jiewen_tan
Title: [239362] trunk/Source/WebKit








Revision 239362
Author jiewen_...@apple.com
Date 2018-12-18 17:25:52 -0800 (Tue, 18 Dec 2018)


Log Message
[Mac] Layout Test http/wpt/webauthn/public-key-credential-create-success-hid.https.html and http/wpt/webauthn/public-key-credential-get-success-hid.https.html are flaky
https://bugs.webkit.org/show_bug.cgi?id=192061

Reviewed by Dewei Zhu.

Part 4.

Add some additional temporary logging info to determine if the time out value passed to the timer is right.
Once the bug is determined and fixed, we should remove all logging added in this patch.

* UIProcess/WebAuthentication/AuthenticatorManager.cpp:
(WebKit::AuthenticatorManager::initTimeOutTimer):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (239361 => 239362)

--- trunk/Source/WebKit/ChangeLog	2018-12-19 00:23:21 UTC (rev 239361)
+++ trunk/Source/WebKit/ChangeLog	2018-12-19 01:25:52 UTC (rev 239362)
@@ -1,3 +1,18 @@
+2018-12-18  Jiewen Tan  
+
+[Mac] Layout Test http/wpt/webauthn/public-key-credential-create-success-hid.https.html and http/wpt/webauthn/public-key-credential-get-success-hid.https.html are flaky
+https://bugs.webkit.org/show_bug.cgi?id=192061
+
+Reviewed by Dewei Zhu.
+
+Part 4.
+
+Add some additional temporary logging info to determine if the time out value passed to the timer is right.
+Once the bug is determined and fixed, we should remove all logging added in this patch.
+
+* UIProcess/WebAuthentication/AuthenticatorManager.cpp:
+(WebKit::AuthenticatorManager::initTimeOutTimer):
+
 2018-12-18  Sihui Liu  
 
 Clean up IndexedDB files between tests


Modified: trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp (239361 => 239362)

--- trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp	2018-12-19 00:23:21 UTC (rev 239361)
+++ trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp	2018-12-19 01:25:52 UTC (rev 239362)
@@ -226,7 +226,7 @@
 
 unsigned timeOutInMsValue = std::min(maxTimeOutValue, timeOutInMs.value_or(maxTimeOutValue));
 // FIXME(192061)
-LOG_ERROR("Start timer.");
+LOG_ERROR("Start timer. %d", timeOutInMsValue);
 m_requestTimeOutTimer.startOneShot(Seconds::fromMilliseconds(timeOutInMsValue));
 }
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239361] trunk/Source/WebCore

2018-12-18 Thread dbates
Title: [239361] trunk/Source/WebCore








Revision 239361
Author dba...@webkit.org
Date 2018-12-18 16:23:21 -0800 (Tue, 18 Dec 2018)


Log Message
Wrong value for key property in keydown and keyup events generated holding Control key
https://bugs.webkit.org/show_bug.cgi?id=192788


Reviewed by Wenson Hsieh.

Similar to what we do on Mac, compute the DOM key property from the characters ignoring
modifier keys input string when the Control key is held down.

* platform/ios/PlatformEventFactoryIOS.mm:
(WebCore::keyForKeyEvent):
* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::keyForKeyEvent):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/ios/PlatformEventFactoryIOS.mm
trunk/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (239360 => 239361)

--- trunk/Source/WebCore/ChangeLog	2018-12-19 00:02:45 UTC (rev 239360)
+++ trunk/Source/WebCore/ChangeLog	2018-12-19 00:23:21 UTC (rev 239361)
@@ -1,3 +1,19 @@
+2018-12-18  Daniel Bates  
+
+Wrong value for key property in keydown and keyup events generated holding Control key
+https://bugs.webkit.org/show_bug.cgi?id=192788
+
+
+Reviewed by Wenson Hsieh.
+
+Similar to what we do on Mac, compute the DOM key property from the characters ignoring
+modifier keys input string when the Control key is held down.
+
+* platform/ios/PlatformEventFactoryIOS.mm:
+(WebCore::keyForKeyEvent):
+* platform/mac/PlatformEventFactoryMac.mm:
+(WebCore::keyForKeyEvent):
+
 2018-12-18  Sihui Liu  
 
 Clean up IndexedDB files between tests


Modified: trunk/Source/WebCore/platform/ios/PlatformEventFactoryIOS.mm (239360 => 239361)

--- trunk/Source/WebCore/platform/ios/PlatformEventFactoryIOS.mm	2018-12-19 00:02:45 UTC (rev 239360)
+++ trunk/Source/WebCore/platform/ios/PlatformEventFactoryIOS.mm	2018-12-19 00:23:21 UTC (rev 239361)
@@ -190,7 +190,13 @@
 }
 }
 
-NSString *characters = event.characters;
+// If more than one key is being pressed and the key combination includes one or more modifier keys
+// that result in the key no longer producing a printable character (e.g., Control + a), then the
+// key value should be the printable key value that would have been produced if the key had been
+// typed with the default keyboard layout with no modifier keys except for Shift and AltGr applied.
+// See .
+bool isControlDown = event.modifierFlags & WebEventFlagMaskControlKey;
+NSString *characters = isControlDown ? event.charactersIgnoringModifiers : event.characters;
 auto length = [characters length];
 // characters return an empty string for dead keys.
 // https://developer.apple.com/reference/appkit/nsevent/1534183-characters


Modified: trunk/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm (239360 => 239361)

--- trunk/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm	2018-12-19 00:02:45 UTC (rev 239360)
+++ trunk/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm	2018-12-19 00:23:21 UTC (rev 239361)
@@ -260,7 +260,7 @@
 // that result in the key no longer producing a printable character (e.g., Control + a), then the
 // key value should be the printable key value that would have been produced if the key had been
 // typed with the default keyboard layout with no modifier keys except for Shift and AltGr applied.
-// https://w3c.github.io/uievents/#keys-guidelines
+// See .
 bool isControlDown = ([event modifierFlags] & NSEventModifierFlagControl);
 NSString *s = isControlDown ? [event charactersIgnoringModifiers] : [event characters];
 auto length = [s length];






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239360] trunk/JSTests

2018-12-18 Thread mark . lam
Title: [239360] trunk/JSTests








Revision 239360
Author mark@apple.com
Date 2018-12-18 16:02:45 -0800 (Tue, 18 Dec 2018)


Log Message
Gardening: test options fix.
https://bugs.webkit.org/show_bug.cgi?id=192822

Unreviewed.

* stress/json-stringify-string-builder-overflow.js:

Modified Paths

trunk/JSTests/ChangeLog
trunk/JSTests/stress/json-stringify-string-builder-overflow.js




Diff

Modified: trunk/JSTests/ChangeLog (239359 => 239360)

--- trunk/JSTests/ChangeLog	2018-12-18 23:59:34 UTC (rev 239359)
+++ trunk/JSTests/ChangeLog	2018-12-19 00:02:45 UTC (rev 239360)
@@ -1,5 +1,14 @@
 2018-12-18  Mark Lam  
 
+Gardening: test options fix.
+https://bugs.webkit.org/show_bug.cgi?id=192822
+
+Unreviewed.
+
+* stress/json-stringify-string-builder-overflow.js:
+
+2018-12-18  Mark Lam  
+
 JSON.stringify() should throw OOM on StringBuilder overflows.
 https://bugs.webkit.org/show_bug.cgi?id=192822
 


Modified: trunk/JSTests/stress/json-stringify-string-builder-overflow.js (239359 => 239360)

--- trunk/JSTests/stress/json-stringify-string-builder-overflow.js	2018-12-18 23:59:34 UTC (rev 239359)
+++ trunk/JSTests/stress/json-stringify-string-builder-overflow.js	2018-12-19 00:02:45 UTC (rev 239360)
@@ -1,4 +1,4 @@
-//@ slow
+//@ slow!
 //@ skip if $architecture != "arm64" and $architecture != "x86-64"
 
 var exception;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239359] trunk/Tools

2018-12-18 Thread david_quesada
Title: [239359] trunk/Tools








Revision 239359
Author david_ques...@apple.com
Date 2018-12-18 15:59:34 -0800 (Tue, 18 Dec 2018)


Log Message
REGRESSION: [iOS] API test TestWebKitAPI._WKDownload.OriginatingWebView is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=192810


Reviewed by Alex Christensen.

* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[OriginatingWebViewDownloadDelegate _downloadDidStart:]):
After releasing our reference to the web view, wait until the next turn of the runloop
before checking that the originatingWebView has been zeroed, since the web view might
still be referenced in the autorelease pool. This _WKDownload unit test isn't about
testing general memory management of WKWebViews, only that _WKDownload does not retain
its web view via the 'originatingWebView' property.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Download.mm




Diff

Modified: trunk/Tools/ChangeLog (239358 => 239359)

--- trunk/Tools/ChangeLog	2018-12-18 23:56:23 UTC (rev 239358)
+++ trunk/Tools/ChangeLog	2018-12-18 23:59:34 UTC (rev 239359)
@@ -1,3 +1,19 @@
+2018-12-18  David Quesada  
+
+REGRESSION: [iOS] API test TestWebKitAPI._WKDownload.OriginatingWebView is a flaky failure
+https://bugs.webkit.org/show_bug.cgi?id=192810
+
+
+Reviewed by Alex Christensen.
+
+* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
+(-[OriginatingWebViewDownloadDelegate _downloadDidStart:]):
+After releasing our reference to the web view, wait until the next turn of the runloop
+before checking that the originatingWebView has been zeroed, since the web view might
+still be referenced in the autorelease pool. This _WKDownload unit test isn't about
+testing general memory management of WKWebViews, only that _WKDownload does not retain
+its web view via the 'originatingWebView' property.
+
 2018-12-18  Sihui Liu  
 
 Clean up IndexedDB files between tests


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Download.mm (239358 => 239359)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Download.mm	2018-12-18 23:56:23 UTC (rev 239358)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/Download.mm	2018-12-18 23:59:34 UTC (rev 239359)
@@ -41,6 +41,7 @@
 #import 
 #import 
 #import 
+#import 
 #import 
 #import 
 
@@ -253,13 +254,13 @@
 
 - (void)_downloadDidStart:(_WKDownload *)download
 {
-@autoreleasepool {
-EXPECT_EQ([download originatingWebView], _webView);
-}
+EXPECT_EQ([download originatingWebView], _webView);
+_webView = nullptr;
 
-_webView = nullptr;
-EXPECT_NULL([download originatingWebView]);
-isDone = true;
+WTF::callOnMainThread([download = retainPtr(download)] {
+EXPECT_NULL([download originatingWebView]);
+isDone = true;
+});
 }
 
 @end






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239358] trunk

2018-12-18 Thread sihui_liu
Title: [239358] trunk








Revision 239358
Author sihui_...@apple.com
Date 2018-12-18 15:56:23 -0800 (Tue, 18 Dec 2018)


Log Message
Clean up IndexedDB files between tests
https://bugs.webkit.org/show_bug.cgi?id=192796

Reviewed by Geoffrey Garen.

Source/WebCore:

We should clean up the IndexedDB files between tests to make sure each test is independent of others.

This patch also fixes some issues in IDB.

Covered by existing tests.

* Modules/indexeddb/server/IDBServer.cpp:
(WebCore::IDBServer::IDBServer::closeAndDeleteDatabasesModifiedSince):
We should shut down all open databases instead of databases from open database connections before deleting
files, because database starts accessing files before connection to database is established.

* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::shutdownForClose):
We should shutdown database after tasks in queue are completed, because tasks have pointer of UniqueIDBDatabase
and UniqueIDBDatabase can be destructed after shutdown.

(WebCore::IDBServer::UniqueIDBDatabase::didDeleteBackingStore):
didDeleteBackingStore can be posted to main thread after immediateCloseForUserDelete, and timer should not be
invoked during the hard close.

(WebCore::IDBServer::UniqueIDBDatabase::handleDatabaseOperations):
Tasks like didOpenBackingStore could be posted from database thread to main thread after
immediateCloseForUserDelete, but we know the backing store will be deleted soon, so no need to handle any
database operation.

(WebCore::IDBServer::UniqueIDBDatabase::performPrefetchCursor):
performPrefetchCursor needs to be aware of whether UniqueIDBDatabase is being closed, so that it will not access
m_backingStore when m_backingStore may already be deleted.

(WebCore::IDBServer::UniqueIDBDatabase::immediateCloseForUserDelete):
immediateCloseForUserDelete does not handle transactions that are in the process of commit or abort.
m_objectStoreTransactionCounts and m_objectStoreWriteTransactions may be used by those transactions in
transactionCompleted, so they do not need to be cleared here.

Source/WebKit:

* UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreRemoveAllIndexedDatabasesSync):
* UIProcess/API/C/WKWebsiteDataStoreRef.h:

Tools:

* DumpRenderTree/mac/DumpRenderTree.mm:
(runTest):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::RemoveAllIndexedDatabasesCallbackContext::RemoveAllIndexedDatabasesCallbackContext):
(WTR::RemoveAllIndexedDatabasesCallback):
(WTR::TestController::ClearIndexedDatabases):
* WebKitTestRunner/TestController.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/indexeddb/server/IDBServer.cpp
trunk/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp
trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h
trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/mac/DumpRenderTree.mm
trunk/Tools/WebKitTestRunner/TestController.cpp
trunk/Tools/WebKitTestRunner/TestController.h
trunk/Tools/WebKitTestRunner/TestInvocation.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (239357 => 239358)

--- trunk/Source/WebCore/ChangeLog	2018-12-18 23:38:54 UTC (rev 239357)
+++ trunk/Source/WebCore/ChangeLog	2018-12-18 23:56:23 UTC (rev 239358)
@@ -1,3 +1,44 @@
+2018-12-18  Sihui Liu  
+
+Clean up IndexedDB files between tests
+https://bugs.webkit.org/show_bug.cgi?id=192796
+
+Reviewed by Geoffrey Garen.
+
+We should clean up the IndexedDB files between tests to make sure each test is independent of others.
+
+This patch also fixes some issues in IDB.
+
+Covered by existing tests.
+
+* Modules/indexeddb/server/IDBServer.cpp:
+(WebCore::IDBServer::IDBServer::closeAndDeleteDatabasesModifiedSince):
+We should shut down all open databases instead of databases from open database connections before deleting 
+files, because database starts accessing files before connection to database is established.
+
+* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
+(WebCore::IDBServer::UniqueIDBDatabase::shutdownForClose):
+We should shutdown database after tasks in queue are completed, because tasks have pointer of UniqueIDBDatabase 
+and UniqueIDBDatabase can be destructed after shutdown.
+
+(WebCore::IDBServer::UniqueIDBDatabase::didDeleteBackingStore):
+didDeleteBackingStore can be posted to main thread after immediateCloseForUserDelete, and timer should not be 
+invoked during the hard close.
+
+(WebCore::IDBServer::UniqueIDBDatabase::handleDatabaseOperations):
+Tasks like didOpenBackingStore could be posted from database thread to main thread after 
+immediateCloseForUserDelete, but we know the backing store will be deleted soon, so no need to handle any 
+database operation. 
+
+ 

[webkit-changes] [239357] trunk

2018-12-18 Thread mmaxfield
Title: [239357] trunk








Revision 239357
Author mmaxfi...@apple.com
Date 2018-12-18 15:38:54 -0800 (Tue, 18 Dec 2018)


Log Message
Thick overlines and line-throughs grow in the wrong direction
https://bugs.webkit.org/show_bug.cgi?id=192264

Reviewed by Dean Jackson.

Source/WebCore:

Overlines should grow upward, and line-throughs should stay centered.

Test: fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction.html

* rendering/TextDecorationPainter.cpp:
(WebCore::TextDecorationPainter::paintTextDecoration):
* style/InlineTextBoxStyle.cpp:
(WebCore::visualOverflowForDecorations):

LayoutTests:

I can't figure out a way to test the line-through, so this just tests the overline.

* fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction-expected.html: Added.
* fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/TextDecorationPainter.cpp
trunk/Source/WebCore/style/InlineTextBoxStyle.cpp


Added Paths

trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction-expected.html
trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction.html




Diff

Modified: trunk/LayoutTests/ChangeLog (239356 => 239357)

--- trunk/LayoutTests/ChangeLog	2018-12-18 23:02:16 UTC (rev 239356)
+++ trunk/LayoutTests/ChangeLog	2018-12-18 23:38:54 UTC (rev 239357)
@@ -1,3 +1,15 @@
+2018-12-18  Myles C. Maxfield  
+
+Thick overlines and line-throughs grow in the wrong direction
+https://bugs.webkit.org/show_bug.cgi?id=192264
+
+Reviewed by Dean Jackson.
+
+I can't figure out a way to test the line-through, so this just tests the overline.
+
+* fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction-expected.html: Added.
+* fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction.html: Added.
+
 2018-12-18  Justin Fan  
 
 [WebGPU] BindGroupLayout and Device::createBindGroupLayout


Added: trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction-expected.html (0 => 239357)

--- trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction-expected.html	2018-12-18 23:38:54 UTC (rev 239357)
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+This test makes sure that overlines grow upward. The test passes if the top line below has the default thickness.
+
+
+


Added: trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction.html (0 => 239357)

--- trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction.html	(rev 0)
+++ trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction.html	2018-12-18 23:38:54 UTC (rev 239357)
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+This test makes sure that overlines grow upward. The test passes if the top line below has the default thickness.
+
+
+


Modified: trunk/Source/WebCore/ChangeLog (239356 => 239357)

--- trunk/Source/WebCore/ChangeLog	2018-12-18 23:02:16 UTC (rev 239356)
+++ trunk/Source/WebCore/ChangeLog	2018-12-18 23:38:54 UTC (rev 239357)
@@ -1,3 +1,19 @@
+2018-12-18  Myles C. Maxfield  
+
+Thick overlines and line-throughs grow in the wrong direction
+https://bugs.webkit.org/show_bug.cgi?id=192264
+
+Reviewed by Dean Jackson.
+
+Overlines should grow upward, and line-throughs should stay centered.
+
+Test: fast/css3-text/css3-text-decoration/text-decoration-thicknes-overline-grow-direction.html
+
+* rendering/TextDecorationPainter.cpp:
+(WebCore::TextDecorationPainter::paintTextDecoration):
+* style/InlineTextBoxStyle.cpp:
+(WebCore::visualOverflowForDecorations):
+
 2018-12-18  Ryosuke Niwa  
 
 Some iOS app crash in FrameLoader::checkCompleted


Modified: trunk/Source/WebCore/rendering/TextDecorationPainter.cpp (239356 => 239357)

--- trunk/Source/WebCore/rendering/TextDecorationPainter.cpp	2018-12-18 23:02:16 UTC (rev 239356)
+++ trunk/Source/WebCore/rendering/TextDecorationPainter.cpp	2018-12-18 23:38:54 UTC (rev 239357)
@@ -296,12 +296,15 @@
 if (m_decorations.contains(TextDecoration::Overline)) {
 float wavyOffset = m_styles.overlineStyle == TextDecorationStyle::Wavy ? m_wavyOffset : 0;
 FloatRect rect(localOrigin, FloatSize(m_width, textDecorationThickness));
-rect.move(0, -wavyOffset);
+float autoTextDecorationThickness = 

[webkit-changes] [239356] trunk/Tools

2018-12-18 Thread achristensen
Title: [239356] trunk/Tools








Revision 239356
Author achristen...@apple.com
Date 2018-12-18 15:02:16 -0800 (Tue, 18 Dec 2018)


Log Message
Fix API test introduced in r239339 on iOS.
https://bugs.webkit.org/show_bug.cgi?id=192675

* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
The iOS implementation of the safe browsing warning is a little different.
It does some element creation when it is added to the window so it knows how big it is.
To test these elements, we need to simulate adding it to the window.
A similar technique is done in other iOS API tests, such as SafeBrowsing.ShowWarningSPI.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm




Diff

Modified: trunk/Tools/ChangeLog (239355 => 239356)

--- trunk/Tools/ChangeLog	2018-12-18 22:24:33 UTC (rev 239355)
+++ trunk/Tools/ChangeLog	2018-12-18 23:02:16 UTC (rev 239356)
@@ -1,3 +1,15 @@
+2018-12-18  Alex Christensen  
+
+Fix API test introduced in r239339 on iOS.
+https://bugs.webkit.org/show_bug.cgi?id=192675
+
+* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
+(TEST):
+The iOS implementation of the safe browsing warning is a little different.
+It does some element creation when it is added to the window so it knows how big it is.
+To test these elements, we need to simulate adding it to the window.
+A similar technique is done in other iOS API tests, such as SafeBrowsing.ShowWarningSPI.
+
 2018-12-18  Jonathan Bedard  
 
 webkitpy: Ignore device type for test when using --force


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm (239355 => 239356)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm	2018-12-18 22:24:33 UTC (rev 239355)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm	2018-12-18 23:02:16 UTC (rev 239356)
@@ -318,6 +318,9 @@
 [webView loadHTMLString:@"alert('loaded')" baseURL:simpleURL.get()];
 while (![webView _safeBrowsingWarning])
 TestWebKitAPI::Util::spinRunLoop();
+#if !PLATFORM(MAC)
+[[webView _safeBrowsingWarning] didMoveToWindow];
+#endif
 visitUnsafeSite([webView _safeBrowsingWarning]);
 TestWebKitAPI::Util::run();
 EXPECT_FALSE(!![webView _safeBrowsingWarning]);
@@ -326,6 +329,9 @@
 [webView evaluateJavaScript:[NSString stringWithFormat:@"window.location='%@'", simple2URL.get()] completionHandler:nil];
 while (![webView _safeBrowsingWarning])
 TestWebKitAPI::Util::spinRunLoop();
+#if !PLATFORM(MAC)
+[[webView _safeBrowsingWarning] didMoveToWindow];
+#endif
 return webView;
 };
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239355] trunk

2018-12-18 Thread mark . lam
Title: [239355] trunk








Revision 239355
Author mark@apple.com
Date 2018-12-18 14:24:33 -0800 (Tue, 18 Dec 2018)


Log Message
JSON.stringify() should throw OOM on StringBuilder overflows.
https://bugs.webkit.org/show_bug.cgi?id=192822


Reviewed by Saam Barati.

JSTests:

* stress/json-stringify-string-builder-overflow.js: Added.

Source/_javascript_Core:

* runtime/JSONObject.cpp:
(JSC::Stringifier::stringify):
(JSC::Stringifier::appendStringifiedValue):
(JSC::Stringifier::Holder::appendNextProperty):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/JSONObject.cpp


Added Paths

trunk/JSTests/stress/json-stringify-string-builder-overflow.js




Diff

Modified: trunk/JSTests/ChangeLog (239354 => 239355)

--- trunk/JSTests/ChangeLog	2018-12-18 22:14:20 UTC (rev 239354)
+++ trunk/JSTests/ChangeLog	2018-12-18 22:24:33 UTC (rev 239355)
@@ -1,3 +1,13 @@
+2018-12-18  Mark Lam  
+
+JSON.stringify() should throw OOM on StringBuilder overflows.
+https://bugs.webkit.org/show_bug.cgi?id=192822
+
+
+Reviewed by Saam Barati.
+
+* stress/json-stringify-string-builder-overflow.js: Added.
+
 2018-12-18  Ross Kirsling  
 
 Redeclaration of var over let/const/class should be a syntax error.


Added: trunk/JSTests/stress/json-stringify-string-builder-overflow.js (0 => 239355)

--- trunk/JSTests/stress/json-stringify-string-builder-overflow.js	(rev 0)
+++ trunk/JSTests/stress/json-stringify-string-builder-overflow.js	2018-12-18 22:24:33 UTC (rev 239355)
@@ -0,0 +1,29 @@
+//@ slow
+//@ skip if $architecture != "arm64" and $architecture != "x86-64"
+
+var exception;
+try {
+var str = JSON.stringify({
+'a1': {
+'a2': {
+'a3': {
+'a4': {
+'a5': {
+'a6': 'AA'
+}
+}
+}
+}
+}
+}, function (key, value) {
+var val = {
+'A': true,
+};
+return val;
+}, 1);
+} catch (e) {
+exception = e;
+}
+
+if (exception != "Error: Out of memory")
+throw "FAILED";


Modified: trunk/Source/_javascript_Core/ChangeLog (239354 => 239355)

--- trunk/Source/_javascript_Core/ChangeLog	2018-12-18 22:14:20 UTC (rev 239354)
+++ trunk/Source/_javascript_Core/ChangeLog	2018-12-18 22:24:33 UTC (rev 239355)
@@ -1,3 +1,16 @@
+2018-12-18  Mark Lam  
+
+JSON.stringify() should throw OOM on StringBuilder overflows.
+https://bugs.webkit.org/show_bug.cgi?id=192822
+
+
+Reviewed by Saam Barati.
+
+* runtime/JSONObject.cpp:
+(JSC::Stringifier::stringify):
+(JSC::Stringifier::appendStringifiedValue):
+(JSC::Stringifier::Holder::appendNextProperty):
+
 2018-12-18  Ross Kirsling  
 
 Redeclaration of var over let/const/class should be a syntax error.


Modified: trunk/Source/_javascript_Core/runtime/JSONObject.cpp (239354 => 239355)

--- trunk/Source/_javascript_Core/runtime/JSONObject.cpp	2018-12-18 22:14:20 UTC (rev 239354)
+++ trunk/Source/_javascript_Core/runtime/JSONObject.cpp	2018-12-18 22:24:33 UTC (rev 239355)
@@ -269,7 +269,7 @@
 JSObject* object = nullptr;
 if (isCallableReplacer()) {
 object = constructEmptyObject(m_exec);
-RETURN_IF_EXCEPTION(scope, jsNull());
+RETURN_IF_EXCEPTION(scope, jsUndefined());
 object->putDirect(vm, vm.propertyNames->emptyIdentifier, value);
 }
 
@@ -276,10 +276,13 @@
 StringBuilder result(StringBuilder::OverflowHandler::RecordOverflow);
 Holder root(Holder::RootHolder, object);
 auto stringifyResult = appendStringifiedValue(result, value, root, emptyPropertyName);
-EXCEPTION_ASSERT(!scope.exception() || (stringifyResult != StringifySucceeded));
+RETURN_IF_EXCEPTION(scope, jsUndefined());
+if (UNLIKELY(result.hasOverflowed())) {
+throwOutOfMemoryError(m_exec, scope);
+return jsUndefined();
+}
 if (UNLIKELY(stringifyResult != StringifySucceeded))
 return jsUndefined();
-
 RELEASE_AND_RETURN(scope, jsString(m_exec, result.toString()));
 }
 
@@ -359,10 +362,6 @@
 const String& string = asString(value)->value(m_exec);
 RETURN_IF_EXCEPTION(scope, StringifyFailed);
 builder.appendQuotedJSONString(string);
-if (UNLIKELY(builder.hasOverflowed())) {
-throwOutOfMemoryError(m_exec, scope);
-return StringifyFailed;
-}
 return StringifySucceeded;
 }
 
@@ -391,6 +390,9 @@
 return StringifyFailedDueToUndefinedOrSymbolValue;
 }
 
+if (UNLIKELY(builder.hasOverflowed()))
+return StringifyFailed;
+
 // Handle cycle detection, and put the holder on the stack.
 for (unsigned i = 0; i < m_holderStack.size(); i++) {
 if (m_holderStack[i].object() == object) {
@@ -410,6 +412,8 

[webkit-changes] [239354] trunk

2018-12-18 Thread ross . kirsling
Title: [239354] trunk








Revision 239354
Author ross.kirsl...@sony.com
Date 2018-12-18 14:14:20 -0800 (Tue, 18 Dec 2018)


Log Message
Redeclaration of var over let/const/class should be a syntax error.
https://bugs.webkit.org/show_bug.cgi?id=192298

Reviewed by Keith Miller.

JSTests:

* test262.yaml:
* test262/expectations.yaml:
Mark 46 tests as passing.

* stress/block-scope-redeclarations.js:
Add some new tests.

* stress/for-in-invalidate-context-weird-assignments.js:
* stress/for-in-tests.js:
Replace tests for outdated behavior with tests for SyntaxError.

* ChakraCore/test/LetConst/defer3.baseline-jsc:
* ChakraCore/test/LetConst/letvar.baseline-jsc:
Update expectations.

Source/_javascript_Core:

>From https://tc39.github.io/ecma262/#sec-block-static-semantics-early-errors:
It is a Syntax Error if any element of the LexicallyDeclaredNames of StatementList also occurs in the
VarDeclaredNames of StatementList.

Accordingly, this patch ensures that { let x; { var x; } } and { { var x; } let x; } are syntax errors.

For the "var after" scenario:
When checking for existing lexically-declared names, we can't simply check the current var scope;
we need to check *all* enclosing scopes up to (and including) the current var scope. In so doing,
we must also avoid violating the Annex B.3.5 condition that allows `try {} catch (e) { var e; }`.

For the "var before" scenario:
We ensure that lexical scopes always keep track of the vars being hoisted over them; this gives us
a simple way to check the current block's var-declared names prior to making a lexical declaration.

* parser/Parser.cpp:
(JSC::Parser::parseTryStatement):
* parser/Parser.h:
(JSC::Scope::Scope):
(JSC::Scope::setIsSimpleCatchParameterScope): Added.
(JSC::Scope::isSimpleCatchParameterScope): Added.
(JSC::Scope::declareVariable):
(JSC::Scope::addVariableBeingHoisted): Added.
(JSC::Scope::declareLexicalVariable):
(JSC::Scope::hasDeclaredVariable):
(JSC::Scope::hasLexicallyDeclaredVariable): Added.
(JSC::Parser::declareHoistedVariable): Added.
(JSC::Parser::declareVariable):

Modified Paths

trunk/JSTests/ChakraCore/test/LetConst/defer3.baseline-jsc
trunk/JSTests/ChakraCore/test/LetConst/letvar.baseline-jsc
trunk/JSTests/ChangeLog
trunk/JSTests/stress/for-in-invalidate-context-weird-assignments.js
trunk/JSTests/stress/for-in-tests.js
trunk/JSTests/test262/expectations.yaml
trunk/JSTests/test262.yaml
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/parser/Parser.cpp
trunk/Source/_javascript_Core/parser/Parser.h


Added Paths

trunk/JSTests/stress/block-scope-redeclarations.js




Diff

Modified: trunk/JSTests/ChakraCore/test/LetConst/defer3.baseline-jsc (239353 => 239354)

--- trunk/JSTests/ChakraCore/test/LetConst/defer3.baseline-jsc	2018-12-18 22:03:07 UTC (rev 239353)
+++ trunk/JSTests/ChakraCore/test/LetConst/defer3.baseline-jsc	2018-12-18 22:14:20 UTC (rev 239354)
@@ -28,11 +28,11 @@
 SyntaxError: Cannot declare a let variable twice: 'x'.
 SyntaxError: Cannot declare a var variable that shadows a let/const/class variable: 'x'.
 SyntaxError: Cannot declare a var variable that shadows a let/const/class variable: 'x'.
-Syntax check succeeded
-Syntax check succeeded
-Syntax check succeeded
-Syntax check succeeded
 SyntaxError: Cannot declare a const variable twice: 'x'.
 SyntaxError: Cannot declare a let variable twice: 'x'.
 SyntaxError: Cannot declare a var variable that shadows a let/const/class variable: 'x'.
 SyntaxError: Cannot declare a var variable that shadows a let/const/class variable: 'x'.
+SyntaxError: Cannot declare a const variable twice: 'x'.
+SyntaxError: Cannot declare a let variable twice: 'x'.
+SyntaxError: Cannot declare a var variable that shadows a let/const/class variable: 'x'.
+SyntaxError: Cannot declare a var variable that shadows a let/const/class variable: 'x'.


Modified: trunk/JSTests/ChakraCore/test/LetConst/letvar.baseline-jsc (239353 => 239354)

--- trunk/JSTests/ChakraCore/test/LetConst/letvar.baseline-jsc	2018-12-18 22:03:07 UTC (rev 239353)
+++ trunk/JSTests/ChakraCore/test/LetConst/letvar.baseline-jsc	2018-12-18 22:14:20 UTC (rev 239354)
@@ -1,8 +1,3 @@
 SyntaxError: Cannot declare a var variable that shadows a let/const/class variable: 'x'.
-var x
-undefined
-let y
-var y
-undefined
-let x
-undefined
+SyntaxError: Cannot declare a var variable that shadows a let/const/class variable: 'x'.
+SyntaxError: Cannot declare a let variable twice: 'x'.


Modified: trunk/JSTests/ChangeLog (239353 => 239354)

--- trunk/JSTests/ChangeLog	2018-12-18 22:03:07 UTC (rev 239353)
+++ trunk/JSTests/ChangeLog	2018-12-18 22:14:20 UTC (rev 239354)
@@ -1,3 +1,25 @@
+2018-12-18  Ross Kirsling  
+
+Redeclaration of var over let/const/class should be a syntax error.
+https://bugs.webkit.org/show_bug.cgi?id=192298
+
+Reviewed by Keith Miller.
+
+* test262.yaml:
+* test262/expectations.yaml:
+Mark 46 tests as passing.
+
+* 

[webkit-changes] [239353] trunk/Source/WebCore

2018-12-18 Thread rniwa
Title: [239353] trunk/Source/WebCore








Revision 239353
Author rn...@webkit.org
Date 2018-12-18 14:03:07 -0800 (Tue, 18 Dec 2018)


Log Message
Some iOS app crash in FrameLoader::checkCompleted
https://bugs.webkit.org/show_bug.cgi?id=192804


Reviewed by Tim Horton.

It's possible for the main thread to call into WebCore / UIWebView selectors while Web thread
is trying to send a delegate message. Disable the release assertion while this is happening
so that iOS app would not crash.

Unfortunately no new test as there is no way to easily test UIWebView in iOS,
and this requires a race between the web thread & the main thread.

* dom/ScriptDisallowedScope.h:
(WebCore::ScriptDisallowedScope::InMainThread::isScriptAllowed):
* platform/ios/wak/WebCoreThread.h:
* platform/ios/wak/WebCoreThread.mm:
(WebThreadDelegateMessageScope::WebThreadDelegateMessageScope):
(WebThreadDelegateMessageScope::~WebThreadDelegateMessageScope):
(SendDelegateMessage):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/ScriptDisallowedScope.h
trunk/Source/WebCore/platform/ios/wak/WebCoreThread.h
trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (239352 => 239353)

--- trunk/Source/WebCore/ChangeLog	2018-12-18 21:54:24 UTC (rev 239352)
+++ trunk/Source/WebCore/ChangeLog	2018-12-18 22:03:07 UTC (rev 239353)
@@ -1,3 +1,26 @@
+2018-12-18  Ryosuke Niwa  
+
+Some iOS app crash in FrameLoader::checkCompleted
+https://bugs.webkit.org/show_bug.cgi?id=192804
+
+
+Reviewed by Tim Horton.
+
+It's possible for the main thread to call into WebCore / UIWebView selectors while Web thread
+is trying to send a delegate message. Disable the release assertion while this is happening
+so that iOS app would not crash.
+
+Unfortunately no new test as there is no way to easily test UIWebView in iOS,
+and this requires a race between the web thread & the main thread.
+
+* dom/ScriptDisallowedScope.h:
+(WebCore::ScriptDisallowedScope::InMainThread::isScriptAllowed):
+* platform/ios/wak/WebCoreThread.h:
+* platform/ios/wak/WebCoreThread.mm:
+(WebThreadDelegateMessageScope::WebThreadDelegateMessageScope):
+(WebThreadDelegateMessageScope::~WebThreadDelegateMessageScope):
+(SendDelegateMessage):
+
 2018-12-18  David Kilzer  
 
 clang-tidy: Use const reference for MediaTime parameter to prevent object copy


Modified: trunk/Source/WebCore/dom/ScriptDisallowedScope.h (239352 => 239353)

--- trunk/Source/WebCore/dom/ScriptDisallowedScope.h	2018-12-18 21:54:24 UTC (rev 239352)
+++ trunk/Source/WebCore/dom/ScriptDisallowedScope.h	2018-12-18 22:03:07 UTC (rev 239353)
@@ -26,6 +26,10 @@
 #include "ContainerNode.h"
 #include 
 
+#if PLATFORM(IOS_FAMILY)
+#include "WebCoreThread.h"
+#endif
+
 namespace WebCore {
 
 class ScriptDisallowedScope {
@@ -86,7 +90,11 @@
 static bool isScriptAllowed()
 {
 ASSERT(isMainThread());
+#if PLATFORM(IOS_FAMILY)
+return !s_count || webThreadDelegateMessageScopeCount;
+#else
 return !s_count;
+#endif
 }
 };
 


Modified: trunk/Source/WebCore/platform/ios/wak/WebCoreThread.h (239352 => 239353)

--- trunk/Source/WebCore/platform/ios/wak/WebCoreThread.h	2018-12-18 21:54:24 UTC (rev 239352)
+++ trunk/Source/WebCore/platform/ios/wak/WebCoreThread.h	2018-12-18 22:03:07 UTC (rev 239353)
@@ -44,6 +44,7 @@
 } WebThreadContext;
 
 extern volatile bool webThreadShouldYield;
+extern volatile unsigned webThreadDelegateMessageScopeCount;
 
 #ifdef __OBJC__
 @class NSRunLoop;


Modified: trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm (239352 => 239353)

--- trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm	2018-12-18 21:54:24 UTC (rev 239352)
+++ trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm	2018-12-18 22:03:07 UTC (rev 239353)
@@ -132,6 +132,8 @@
 
 static NSMutableArray* sAsyncDelegates = nil;
 
+WEBCORE_EXPORT volatile unsigned webThreadDelegateMessageScopeCount = 0;
+
 static inline void SendMessage(NSInvocation* invocation)
 {
 [invocation invoke];
@@ -171,6 +173,16 @@
 #endif
 }
 
+class WebThreadDelegateMessageScope {
+public:
+WebThreadDelegateMessageScope() { ++webThreadDelegateMessageScopeCount; }
+~WebThreadDelegateMessageScope()
+{
+ASSERT(webThreadDelegateMessageScopeCount);
+--webThreadDelegateMessageScopeCount;
+}
+};
+
 static void SendDelegateMessage(NSInvocation* invocation)
 {
 if (!WebThreadIsCurrent()) {
@@ -194,6 +206,7 @@
 #endif
 
 {
+WebThreadDelegateMessageScope delegateScope;
 // Code block created to scope JSC::JSLock::DropAllLocks outside of WebThreadLock()
 JSC::JSLock::DropAllLocks dropAllLocks(WebCore::commonVM());
 _WebThreadUnlock();






___
webkit-changes mailing list

[webkit-changes] [239352] trunk/Source

2018-12-18 Thread ddkilzer
Title: [239352] trunk/Source








Revision 239352
Author ddkil...@apple.com
Date 2018-12-18 13:54:24 -0800 (Tue, 18 Dec 2018)


Log Message
clang-tidy: Use const reference for MediaTime parameter to prevent object copy


Reviewed by Mark Lam.

Source/_javascript_Core:

* runtime/JSCJSValue.h:
(JSC::jsNumber):

Source/WebCore:

* bindings/js/JSDOMConvertNumbers.h:
(WebCore::JSConverter::convert):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/JSCJSValue.h
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/bindings/js/JSDOMConvertNumbers.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (239351 => 239352)

--- trunk/Source/_javascript_Core/ChangeLog	2018-12-18 21:51:56 UTC (rev 239351)
+++ trunk/Source/_javascript_Core/ChangeLog	2018-12-18 21:54:24 UTC (rev 239352)
@@ -1,3 +1,13 @@
+2018-12-18  David Kilzer  
+
+clang-tidy: Use const reference for MediaTime parameter to prevent object copy
+
+
+Reviewed by Mark Lam.
+
+* runtime/JSCJSValue.h:
+(JSC::jsNumber):
+
 2018-12-18  Saam Barati  
 
 Unreviewed. Appease a build error where we weren't using a variable defined in an "if"


Modified: trunk/Source/_javascript_Core/runtime/JSCJSValue.h (239351 => 239352)

--- trunk/Source/_javascript_Core/runtime/JSCJSValue.h	2018-12-18 21:51:56 UTC (rev 239351)
+++ trunk/Source/_javascript_Core/runtime/JSCJSValue.h	2018-12-18 21:54:24 UTC (rev 239352)
@@ -551,7 +551,7 @@
 return JSValue(d);
 }
 
-ALWAYS_INLINE JSValue jsNumber(MediaTime t)
+ALWAYS_INLINE JSValue jsNumber(const MediaTime& t)
 {
 return jsNumber(t.toDouble());
 }


Modified: trunk/Source/WebCore/ChangeLog (239351 => 239352)

--- trunk/Source/WebCore/ChangeLog	2018-12-18 21:51:56 UTC (rev 239351)
+++ trunk/Source/WebCore/ChangeLog	2018-12-18 21:54:24 UTC (rev 239352)
@@ -1,3 +1,13 @@
+2018-12-18  David Kilzer  
+
+clang-tidy: Use const reference for MediaTime parameter to prevent object copy
+
+
+Reviewed by Mark Lam.
+
+* bindings/js/JSDOMConvertNumbers.h:
+(WebCore::JSConverter::convert):
+
 2018-12-18  Justin Fan  
 
 [WebGPU] BindGroupLayout and Device::createBindGroupLayout


Modified: trunk/Source/WebCore/bindings/js/JSDOMConvertNumbers.h (239351 => 239352)

--- trunk/Source/WebCore/bindings/js/JSDOMConvertNumbers.h	2018-12-18 21:51:56 UTC (rev 239351)
+++ trunk/Source/WebCore/bindings/js/JSDOMConvertNumbers.h	2018-12-18 21:54:24 UTC (rev 239352)
@@ -389,7 +389,7 @@
 }
 
 // Add overload for MediaTime.
-static JSC::JSValue convert(MediaTime value)
+static JSC::JSValue convert(const MediaTime& value)
 {
 return JSC::jsNumber(JSC::purifyNaN(value.toDouble()));
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [239351] trunk

2018-12-18 Thread justin_fan
Title: [239351] trunk








Revision 239351
Author justin_...@apple.com
Date 2018-12-18 13:51:56 -0800 (Tue, 18 Dec 2018)


Log Message
[WebGPU] BindGroupLayout and Device::createBindGroupLayout
https://bugs.webkit.org/show_bug.cgi?id=192817

Reviewed by Dean Jackson.

Update bind-group-layouts to test new functionality.

Source/WebCore:

Implement the emtpy WebGPUBindGroupLayout interface, and enable creation via WebGPUDevice::createBindGroupLayout:
* Modules/webgpu/WebGPUBindGroupLayout.cpp: Added.
(WebCore::WebGPUBindGroupLayout::create):
(WebCore::WebGPUBindGroupLayout::WebGPUBindGroupLayout):
* Modules/webgpu/WebGPUBindGroupLayout.h: Added.
* Modules/webgpu/WebGPUBindGroupLayout.idl: Added. Empty interface for now.
* Modules/webgpu/WebGPUDevice.cpp:
(WebCore::WebGPUDevice::createBindGroupLayout const): Added.
* Modules/webgpu/WebGPUDevice.h:
* Modules/webgpu/WebGPUDevice.idl:
* platform/graphics/gpu/GPUBindGroupLayout.cpp: Added.
(WebCore::GPUBindGroupLayout::tryCreate):
(WebCore::GPUBindGroupLayout::GPUBindGroupLayout):
* platform/graphics/gpu/GPUBindGroupLayout.h: Added.
* platform/graphics/gpu/GPUDevice.cpp:
(WebCore::GPUDevice::tryCreateBindGroupLayout const): Added.
* platform/graphics/gpu/GPUDevice.h:

Add files and symbols to project:
* CMakeLists.txt:
* DerivedSources.make:
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/WebCoreBuiltinNames.h:

Missing includes that were previously provided via UnifiedSources:
* platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.h:
* platform/sql/SQLiteFileSystem.h:

LayoutTests:

* webgpu/bind-group-layouts-expected.txt:
* webgpu/bind-group-layouts.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/webgpu/bind-group-layouts-expected.txt
trunk/LayoutTests/webgpu/bind-group-layouts.html
trunk/Source/WebCore/CMakeLists.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/DerivedSources.make
trunk/Source/WebCore/Modules/webgpu/WebGPUDevice.cpp
trunk/Source/WebCore/Modules/webgpu/WebGPUDevice.h
trunk/Source/WebCore/Modules/webgpu/WebGPUDevice.idl
trunk/Source/WebCore/Sources.txt
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h
trunk/Source/WebCore/platform/graphics/gpu/GPUDevice.cpp
trunk/Source/WebCore/platform/graphics/gpu/GPUDevice.h
trunk/Source/WebCore/platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.h
trunk/Source/WebCore/platform/sql/SQLiteFileSystem.h


Added Paths

trunk/Source/WebCore/Modules/webgpu/WebGPUBindGroupLayout.cpp
trunk/Source/WebCore/Modules/webgpu/WebGPUBindGroupLayout.h
trunk/Source/WebCore/Modules/webgpu/WebGPUBindGroupLayout.idl
trunk/Source/WebCore/platform/graphics/gpu/GPUBindGroupLayout.cpp
trunk/Source/WebCore/platform/graphics/gpu/GPUBindGroupLayout.h




Diff

Modified: trunk/LayoutTests/ChangeLog (239350 => 239351)

--- trunk/LayoutTests/ChangeLog	2018-12-18 21:51:06 UTC (rev 239350)
+++ trunk/LayoutTests/ChangeLog	2018-12-18 21:51:56 UTC (rev 239351)
@@ -1,3 +1,15 @@
+2018-12-18  Justin Fan  
+
+[WebGPU] BindGroupLayout and Device::createBindGroupLayout
+https://bugs.webkit.org/show_bug.cgi?id=192817
+
+Reviewed by Dean Jackson.
+
+Update bind-group-layouts to test new functionality.
+
+* webgpu/bind-group-layouts-expected.txt:
+* webgpu/bind-group-layouts.html:
+
 2018-12-18  Ryan Haddad  
 
 Unreviewed test gardening after r239306 and r239338.


Modified: trunk/LayoutTests/webgpu/bind-group-layouts-expected.txt (239350 => 239351)

--- trunk/LayoutTests/webgpu/bind-group-layouts-expected.txt	2018-12-18 21:51:06 UTC (rev 239350)
+++ trunk/LayoutTests/webgpu/bind-group-layouts-expected.txt	2018-12-18 21:51:56 UTC (rev 239351)
@@ -1,3 +1,4 @@
 
-PASS Create WebGPUBindGroupLayoutDescriptor. 
+PASS Create a basic WebGPUBindGroupLayoutDescriptor. 
+PASS Create a basic WebGPUBindGroupLayout with a WebGPUDevice. 
 


Modified: trunk/LayoutTests/webgpu/bind-group-layouts.html (239350 => 239351)

--- trunk/LayoutTests/webgpu/bind-group-layouts.html	2018-12-18 21:51:06 UTC (rev 239350)
+++ trunk/LayoutTests/webgpu/bind-group-layouts.html	2018-12-18 21:51:56 UTC (rev 239351)
@@ -1,7 +1,8 @@
 
 
-Create WebGPUBindGroupLayoutDescriptor.
+Create WebGPUBindGroupLayout.
 
+