[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

aestes at apple.com aestes at apple.com
Wed Dec 22 15:07:52 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit ad6310ac49f5d289d27ef494015cdaa047392a4a
Author: aestes at apple.com <aestes at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Oct 28 07:47:56 2010 +0000

    2010-10-28  Andy Estes  <aestes at apple.com>
    
            Reviewed by Adam Barth.
    
            Fix a test failure introduced in r70748 by supporting Qt's non-standard
            use of classid.
            https://bugs.webkit.org/show_bug.cgi?id=45679
    
            * html/HTMLObjectElement.cpp:
            (WebCore::objectHasSupportedClassId): Return true if the object's
            serviceType is 'application/x-qt-plugin'.
            (WebCore::HTMLObjectElement::updateWidget): Do not render fallback
            content if a non-empty classid is specified for a Qt plugin object.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70754 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index c2e51a3..e41bdc7 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,17 @@
+2010-10-28  Andy Estes  <aestes at apple.com>
+
+        Reviewed by Adam Barth.
+
+        Fix a test failure introduced in r70748 by supporting Qt's non-standard
+        use of classid.
+        https://bugs.webkit.org/show_bug.cgi?id=45679
+
+        * html/HTMLObjectElement.cpp:
+        (WebCore::objectHasSupportedClassId): Return true if the object's
+        serviceType is 'application/x-qt-plugin'.
+        (WebCore::HTMLObjectElement::updateWidget): Do not render fallback
+        content if a non-empty classid is specified for a Qt plugin object.
+
 2010-10-28  Ivan Krstić  <ike at apple.com>
 
         Reviewed by Mark Rowe.
diff --git a/WebCore/html/HTMLObjectElement.cpp b/WebCore/html/HTMLObjectElement.cpp
index 2b586cf..b47bd64 100644
--- a/WebCore/html/HTMLObjectElement.cpp
+++ b/WebCore/html/HTMLObjectElement.cpp
@@ -217,6 +217,18 @@ bool HTMLObjectElement::hasFallbackContent() const
     }
     return false;
 }
+    
+static bool objectHasSupportedClassId(HTMLObjectElement* object)
+{
+#if PLATFORM(QT)
+    // Qt plug-ins use classid to specify which QObject to load.
+    ASSERT(object);
+    return equalsIgnoringCase(object->serviceType(), "application/x-qt-plugin");
+#else
+    ASSERT_UNUSED(object, object);
+    return false;
+#endif
+}
 
 // FIXME: This should be unified with HTMLEmbedElement::updateWidget and
 // moved down into HTMLPluginImageElement.cpp
@@ -263,10 +275,10 @@ void HTMLObjectElement::updateWidget(bool onlyCreateNonNetscapePlugins)
 
     // 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.
-    bool hasEmptyClassId = classId().isEmpty();
+    bool hasValidClassId = classId().isEmpty() || objectHasSupportedClassId(this);
 
     SubframeLoader* loader = document()->frame()->loader()->subframeLoader();
-    bool success = beforeLoadAllowedLoad && hasEmptyClassId && loader->requestObject(this, url, getAttribute(nameAttr), serviceType, paramNames, paramValues);
+    bool success = beforeLoadAllowedLoad && hasValidClassId && loader->requestObject(this, url, getAttribute(nameAttr), serviceType, paramNames, paramValues);
 
     if (!success && fallbackContent)
         renderFallbackContent();

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list