Title: [275395] trunk
Revision
275395
Author
[email protected]
Date
2021-04-01 17:38:50 -0700 (Thu, 01 Apr 2021)

Log Message

REGRESSION(r272469) QuickLook previews broken in some places on macOS
https://bugs.webkit.org/show_bug.cgi?id=224086

Patch by Alex Christensen <[email protected]> on 2021-04-01
Reviewed by Tim Horton.

Source/WebCore:

The linked-on-or-after check saves us from most compatibility problems, but QuickLook on macOS was broken.
It uses schemes x-apple-ql-id and x-apple-ql-magic, which we allow to continue to have non-null origins.
Covered by API tests.

* page/SecurityOrigin.cpp:
(WebCore::shouldTreatAsUniqueOrigin):

Tools:

* TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
(TestWebKitAPI::TEST_F):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (275394 => 275395)


--- trunk/Source/WebCore/ChangeLog	2021-04-02 00:19:11 UTC (rev 275394)
+++ trunk/Source/WebCore/ChangeLog	2021-04-02 00:38:50 UTC (rev 275395)
@@ -1,5 +1,19 @@
 2021-04-01  Alex Christensen  <[email protected]>
 
+        REGRESSION(r272469) QuickLook previews broken in some places on macOS
+        https://bugs.webkit.org/show_bug.cgi?id=224086
+
+        Reviewed by Tim Horton.
+
+        The linked-on-or-after check saves us from most compatibility problems, but QuickLook on macOS was broken.
+        It uses schemes x-apple-ql-id and x-apple-ql-magic, which we allow to continue to have non-null origins.
+        Covered by API tests.
+
+        * page/SecurityOrigin.cpp:
+        (WebCore::shouldTreatAsUniqueOrigin):
+
+2021-04-01  Alex Christensen  <[email protected]>
+
         Add more deprecation macros.
 
         I missed one in r275298

Modified: trunk/Source/WebCore/page/SecurityOrigin.cpp (275394 => 275395)


--- trunk/Source/WebCore/page/SecurityOrigin.cpp	2021-04-02 00:19:11 UTC (rev 275394)
+++ trunk/Source/WebCore/page/SecurityOrigin.cpp	2021-04-02 00:38:50 UTC (rev 275395)
@@ -119,13 +119,12 @@
     if (url.hasSpecialScheme()
 #if PLATFORM(COCOA)
         || url.protocolIs("applewebdata")
+        || url.protocolIs("x-apple-ql-id")
+        || url.protocolIs("x-apple-ql-magic")
 #endif
 #if PLATFORM(GTK) || PLATFORM(WPE)
         || url.protocolIs("resource")
 #endif
-#if USE(QUICK_LOOK)
-        || url.protocolIs("x-apple-ql-id")
-#endif
         || url.protocolIs("blob"))
         return false;
 

Modified: trunk/Tools/ChangeLog (275394 => 275395)


--- trunk/Tools/ChangeLog	2021-04-02 00:19:11 UTC (rev 275394)
+++ trunk/Tools/ChangeLog	2021-04-02 00:38:50 UTC (rev 275395)
@@ -1,3 +1,13 @@
+2021-04-01  Alex Christensen  <[email protected]>
+
+        REGRESSION(r272469) QuickLook previews broken in some places on macOS
+        https://bugs.webkit.org/show_bug.cgi?id=224086
+
+        Reviewed by Tim Horton.
+
+        * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
+        (TestWebKitAPI::TEST_F):
+
 2021-04-01  Aakash Jain  <[email protected]>
 
         Enable ews status bubble for stress tests ews

Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp (275394 => 275395)


--- trunk/Tools/TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp	2021-04-02 00:19:11 UTC (rev 275394)
+++ trunk/Tools/TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp	2021-04-02 00:38:50 UTC (rev 275395)
@@ -77,12 +77,18 @@
 
 TEST_F(SecurityOriginTest, SecurityOriginConstructors)
 {
-    Ref<SecurityOrigin> o1 = SecurityOrigin::create("http", "example.com", Optional<uint16_t>(80));
-    Ref<SecurityOrigin> o2 = SecurityOrigin::create("http", "example.com", Optional<uint16_t>());
-    Ref<SecurityOrigin> o3 = SecurityOrigin::createFromString("http://example.com");
-    Ref<SecurityOrigin> o4 = SecurityOrigin::createFromString("http://example.com:80");
-    Ref<SecurityOrigin> o5 = SecurityOrigin::create(URL(URL(), "http://example.com"));
-    Ref<SecurityOrigin> o6 = SecurityOrigin::create(URL(URL(), "http://example.com:80"));
+    auto o1 = SecurityOrigin::create("http", "example.com", Optional<uint16_t>(80));
+    auto o2 = SecurityOrigin::create("http", "example.com", Optional<uint16_t>());
+    auto o3 = SecurityOrigin::createFromString("http://example.com");
+    auto o4 = SecurityOrigin::createFromString("http://example.com:80");
+    auto o5 = SecurityOrigin::create(URL(URL(), "http://example.com"));
+    auto o6 = SecurityOrigin::create(URL(URL(), "http://example.com:80"));
+    auto o7 = SecurityOrigin::createFromString("http://example.com:81");
+    auto o8 = SecurityOrigin::createFromString("unrecognized://host");
+#if PLATFORM(COCOA)
+    auto o9 = SecurityOrigin::createFromString("x-apple-ql-id://host");
+    auto o10 = SecurityOrigin::createFromString("x-apple-ql-magic://host");
+#endif
 
     EXPECT_EQ(String("http"), o1->protocol());
     EXPECT_EQ(String("http"), o2->protocol());
@@ -90,6 +96,12 @@
     EXPECT_EQ(String("http"), o4->protocol());
     EXPECT_EQ(String("http"), o5->protocol());
     EXPECT_EQ(String("http"), o6->protocol());
+    EXPECT_EQ(String("http"), o7->protocol());
+    EXPECT_EQ(String(""), o8->protocol());
+#if PLATFORM(COCOA)
+    EXPECT_EQ(String("x-apple-ql-id"), o9->protocol());
+    EXPECT_EQ(String("x-apple-ql-magic"), o10->protocol());
+#endif
 
     EXPECT_EQ(String("example.com"), o1->host());
     EXPECT_EQ(String("example.com"), o2->host());
@@ -97,6 +109,12 @@
     EXPECT_EQ(String("example.com"), o4->host());
     EXPECT_EQ(String("example.com"), o5->host());
     EXPECT_EQ(String("example.com"), o6->host());
+    EXPECT_EQ(String("example.com"), o7->host());
+    EXPECT_EQ(String(""), o8->host());
+#if PLATFORM(COCOA)
+    EXPECT_EQ(String("host"), o9->host());
+    EXPECT_EQ(String("host"), o10->host());
+#endif
 
     EXPECT_FALSE(o1->port());
     EXPECT_FALSE(o2->port());
@@ -104,6 +122,12 @@
     EXPECT_FALSE(o4->port());
     EXPECT_FALSE(o5->port());
     EXPECT_FALSE(o6->port());
+    EXPECT_EQ(o7->port(), Optional<uint16_t>(81));
+    EXPECT_FALSE(o8->port());
+#if PLATFORM(COCOA)
+    EXPECT_FALSE(o9->port());
+    EXPECT_FALSE(o10->port());
+#endif
 
     EXPECT_EQ("http://example.com", o1->toString());
     EXPECT_EQ("http://example.com", o2->toString());
@@ -111,6 +135,12 @@
     EXPECT_EQ("http://example.com", o4->toString());
     EXPECT_EQ("http://example.com", o5->toString());
     EXPECT_EQ("http://example.com", o6->toString());
+    EXPECT_EQ("http://example.com:81", o7->toString());
+    EXPECT_EQ("null", o8->toString());
+#if PLATFORM(COCOA)
+    EXPECT_EQ("x-apple-ql-id://host", o9->toString());
+    EXPECT_EQ("x-apple-ql-magic://host", o10->toString());
+#endif
 
     EXPECT_TRUE(o1->isSameOriginAs(o2.get()));
     EXPECT_TRUE(o1->isSameOriginAs(o3.get()));
@@ -117,6 +147,12 @@
     EXPECT_TRUE(o1->isSameOriginAs(o4.get()));
     EXPECT_TRUE(o1->isSameOriginAs(o5.get()));
     EXPECT_TRUE(o1->isSameOriginAs(o6.get()));
+    EXPECT_FALSE(o1->isSameOriginAs(o7.get()));
+    EXPECT_FALSE(o1->isSameOriginAs(o8.get()));
+#if PLATFORM(COCOA)
+    EXPECT_FALSE(o1->isSameOriginAs(o9.get()));
+    EXPECT_FALSE(o1->isSameOriginAs(o10.get()));
+#endif
 }
 
 TEST_F(SecurityOriginTest, SecurityOriginFileBasedConstructors)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to