Title: [242784] trunk/Source/WebCore
Revision
242784
Author
[email protected]
Date
2019-03-11 23:58:20 -0700 (Mon, 11 Mar 2019)

Log Message

Remove OS X Server QuickTime plugin quirks
https://bugs.webkit.org/show_bug.cgi?id=195607

Reviewed by Brent Fulgham.

r87244 added a site specific quirk for Mac OS X Sever wiki pages.
However, the issue has since been resolved as of OS X Mountain Lion,
of which Apple has ended the support in September 2015.

Because the latest versions of Safari no longer supports non-Flash plugins,
the only scenario in which this quirk comes into play is when a third party app
which embeds WKWebView or WebKitLegacy loaded web pages on a OS X Server
running OS X Mountain Lion or earlier.

Given these observations, it's probably safe to remove this quirk from WebKit.

* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::hasFallbackContent const):
(WebCore::HTMLObjectElement::hasValidClassId):
(WebCore::HTMLObjectElement::shouldAllowQuickTimeClassIdQuirk): Deleted.
* html/HTMLObjectElement.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (242783 => 242784)


--- trunk/Source/WebCore/ChangeLog	2019-03-12 06:44:27 UTC (rev 242783)
+++ trunk/Source/WebCore/ChangeLog	2019-03-12 06:58:20 UTC (rev 242784)
@@ -1,3 +1,27 @@
+2019-03-11  Ryosuke Niwa  <[email protected]>
+
+        Remove OS X Server QuickTime plugin quirks
+        https://bugs.webkit.org/show_bug.cgi?id=195607
+
+        Reviewed by Brent Fulgham.
+
+        r87244 added a site specific quirk for Mac OS X Sever wiki pages.
+        However, the issue has since been resolved as of OS X Mountain Lion,
+        of which Apple has ended the support in September 2015.
+
+        Because the latest versions of Safari no longer supports non-Flash plugins,
+        the only scenario in which this quirk comes into play is when a third party app
+        which embeds WKWebView or WebKitLegacy loaded web pages on a OS X Server
+        running OS X Mountain Lion or earlier.
+
+        Given these observations, it's probably safe to remove this quirk from WebKit.
+
+        * html/HTMLObjectElement.cpp:
+        (WebCore::HTMLObjectElement::hasFallbackContent const):
+        (WebCore::HTMLObjectElement::hasValidClassId):
+        (WebCore::HTMLObjectElement::shouldAllowQuickTimeClassIdQuirk): Deleted.
+        * html/HTMLObjectElement.h:
+
 2019-03-11  Ross Kirsling  <[email protected]>
 
         Unreviewed speculative WPE build fix after r195586.

Modified: trunk/Source/WebCore/html/HTMLObjectElement.cpp (242783 => 242784)


--- trunk/Source/WebCore/html/HTMLObjectElement.cpp	2019-03-12 06:44:27 UTC (rev 242783)
+++ trunk/Source/WebCore/html/HTMLObjectElement.cpp	2019-03-12 06:58:20 UTC (rev 242784)
@@ -224,37 +224,11 @@
     }
     return false;
 }
-    
-bool HTMLObjectElement::shouldAllowQuickTimeClassIdQuirk()
-{
-    // This site-specific hack maintains compatibility with Mac OS X Wiki Server,
-    // which embeds QuickTime movies using an object tag containing QuickTime's
-    // ActiveX classid. Treat this classid as valid only if OS X Server's unique
-    // 'generator' meta tag is present. Only apply this quirk if there is no
-    // fallback content, which ensures the quirk will disable itself if Wiki
-    // Server is updated to generate an alternate embed tag as fallback content.
 
-    if (!document().page()
-        || !document().page()->settings().needsSiteSpecificQuirks()
-        || hasFallbackContent()
-        || !equalLettersIgnoringASCIICase(attributeWithoutSynchronization(classidAttr), "clsid:02bf25d5-8c17-4b23-bc80-d3488abddc6b"))
-        return false;
-
-    for (auto& metaElement : descendantsOfType<HTMLMetaElement>(document())) {
-        if (equalLettersIgnoringASCIICase(metaElement.name(), "generator") && startsWithLettersIgnoringASCIICase(metaElement.content(), "mac os x server web services server"))
-            return true;
-    }
-
-    return false;
-}
-    
 bool HTMLObjectElement::hasValidClassId()
 {
     if (MIMETypeRegistry::isJavaAppletMIMEType(serviceType()) && protocolIs(attributeWithoutSynchronization(classidAttr), "java"))
         return true;
-    
-    if (shouldAllowQuickTimeClassIdQuirk())
-        return true;
 
     // HTML5 says that fallback content should be rendered if a non-empty
     // classid is specified for which the UA can't find a suitable plug-in.

Modified: trunk/Source/WebCore/html/HTMLObjectElement.h (242783 => 242784)


--- trunk/Source/WebCore/html/HTMLObjectElement.h	2019-03-12 06:44:27 UTC (rev 242783)
+++ trunk/Source/WebCore/html/HTMLObjectElement.h	2019-03-12 06:58:20 UTC (rev 242784)
@@ -84,8 +84,7 @@
     // FIXME: This function should not deal with url or serviceType
     // so that we can better share code between <object> and <embed>.
     void parametersForPlugin(Vector<String>& paramNames, Vector<String>& paramValues, String& url, String& serviceType);
-    
-    bool shouldAllowQuickTimeClassIdQuirk();
+
     bool hasValidClassId();
 
     void refFormAssociatedElement() final { ref(); }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to