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

robert at webkit.org robert at webkit.org
Wed Dec 22 15:19:37 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 4cb88990c8ea132dc7b31189f715cf6b0765ec98
Author: robert at webkit.org <robert at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Nov 1 02:48:41 2010 +0000

    2010-10-31  Robert Hogan  <robert at webkit.org>
    
            Reviewed by Antonio Gomes.
    
            [Qt] [Gtk] Plug-ins having upper case in mime type are failing to load
    
            Qt and Gtk are case-sensitive when storing the declared mime-type
            of plugins. Since plugin mime-types are lowercased prior to searching
            for them in the plugin database, ensure they are loaded with the
            mime-type in lower case too.
    
            https://bugs.webkit.org/show_bug.cgi?id=36815
    
            * plugins/gtk/PluginPackageGtk.cpp:
            (WebCore::PluginPackage::fetchInfo):
            * plugins/qt/PluginPackageQt.cpp:
            (WebCore::PluginPackage::setMIMEDescription):
    2010-10-31  Robert Hogan  <robert at webkit.org>
    
            Reviewed by Antonio Gomes.
    
            [Qt] [Gtk] Plug-ins having upper case in mime type are failing to load
    
            Qt and Gtk are case-sensitive when storing the declared mime-type
            of plugins. Since plugin mime-types are lowercased prior to searching
            for them in the plugin database, ensure they are loaded with the
            mime-type in lower case too.
    
            Change the test netscape plugin to declare its mimetype in sentence
            case so that the correct behaviour is enforced.
    
            https://bugs.webkit.org/show_bug.cgi?id=36815
    
            * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
            (NP_GetMIMEDescription):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@71006 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index cb3feac..5883a89 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -2,6 +2,24 @@
 
         Reviewed by Antonio Gomes.
 
+        [Qt] [Gtk] Plug-ins having upper case in mime type are failing to load
+
+        Qt and Gtk are case-sensitive when storing the declared mime-type
+        of plugins. Since plugin mime-types are lowercased prior to searching
+        for them in the plugin database, ensure they are loaded with the
+        mime-type in lower case too.
+
+        https://bugs.webkit.org/show_bug.cgi?id=36815
+
+        * plugins/gtk/PluginPackageGtk.cpp:
+        (WebCore::PluginPackage::fetchInfo):
+        * plugins/qt/PluginPackageQt.cpp:
+        (WebCore::PluginPackage::setMIMEDescription):
+
+2010-10-31  Robert Hogan  <robert at webkit.org>
+
+        Reviewed by Antonio Gomes.
+
         [Qt] Support nodesFromRect in DRT
 
         Pass a Document object as a QWebElement. 
diff --git a/WebCore/plugins/gtk/PluginPackageGtk.cpp b/WebCore/plugins/gtk/PluginPackageGtk.cpp
index d0218fb..f14a1ae 100644
--- a/WebCore/plugins/gtk/PluginPackageGtk.cpp
+++ b/WebCore/plugins/gtk/PluginPackageGtk.cpp
@@ -74,7 +74,7 @@ bool PluginPackage::fetchInfo()
 
     gchar** mimeDescs = g_strsplit(types, ";", -1);
     for (int i = 0; mimeDescs[i] && mimeDescs[i][0]; i++) {
-        gchar** mimeData = g_strsplit(mimeDescs[i], ":", 3);
+        gchar** mimeData = g_strsplit(g_strdown(mimeDescs[i]), ":", 3);
         if (g_strv_length(mimeData) < 3) {
             g_strfreev(mimeData);
             continue;
diff --git a/WebCore/plugins/qt/PluginPackageQt.cpp b/WebCore/plugins/qt/PluginPackageQt.cpp
index e7058c7..ce07faf 100644
--- a/WebCore/plugins/qt/PluginPackageQt.cpp
+++ b/WebCore/plugins/qt/PluginPackageQt.cpp
@@ -69,10 +69,10 @@ bool PluginPackage::fetchInfo()
 
 void PluginPackage::setMIMEDescription(const String& mimeDescription)
 {
-    m_fullMIMEDescription = mimeDescription;
+    m_fullMIMEDescription = mimeDescription.lower();
 
     Vector<String> types;
-    mimeDescription.split(UChar(';'), false, types);
+    mimeDescription.lower().split(UChar(';'), false, types);
     for (unsigned i = 0; i < types.size(); ++i) {
         Vector<String> mime;
         types[i].split(UChar(':'), true, mime);
diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index 904aa97..e4a5998 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -2,6 +2,25 @@
 
         Reviewed by Antonio Gomes.
 
+        [Qt] [Gtk] Plug-ins having upper case in mime type are failing to load
+
+        Qt and Gtk are case-sensitive when storing the declared mime-type
+        of plugins. Since plugin mime-types are lowercased prior to searching
+        for them in the plugin database, ensure they are loaded with the
+        mime-type in lower case too.
+
+        Change the test netscape plugin to declare its mimetype in sentence
+        case so that the correct behaviour is enforced.
+
+        https://bugs.webkit.org/show_bug.cgi?id=36815
+
+        * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
+        (NP_GetMIMEDescription):
+
+2010-10-31  Robert Hogan  <robert at webkit.org>
+
+        Reviewed by Antonio Gomes.
+
         [Qt] Support nodesFromRect in DRT
 
         https://bugs.webkit.org/show_bug.cgi?id=48716
diff --git a/WebKitTools/DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp b/WebKitTools/DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp
index 14bb8ef..2298ef1 100644
--- a/WebKitTools/DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp
+++ b/WebKitTools/DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp
@@ -372,7 +372,9 @@ webkit_test_plugin_set_value(NPP instance, NPNVariable variable, void* value)
 char *
 NP_GetMIMEDescription(void)
 {
-    return const_cast<char*>("application/x-webkit-test-netscape:testnetscape:test netscape content");
+    // We sentence-case the mime-type here to ensure that ports are not
+    // case-sensitive when loading plugins. See https://webkit.org/b/36815
+    return const_cast<char*>("application/x-Webkit-Test-Netscape:testnetscape:test netscape content");
 }
 
 NPError

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list