[Qt][WK2] plugin tests assert in debug
authorkbalazs@webkit.org <kbalazs@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 14 Jan 2013 11:02:35 +0000 (11:02 +0000)
committerkbalazs@webkit.org <kbalazs@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 14 Jan 2013 11:02:35 +0000 (11:02 +0000)
https://bugs.webkit.org/show_bug.cgi?id=106659

Reviewed by Benjamin Poulain.

Fixed the misuse of String::split.

* Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::truncateToSingleLine):
Add an assert to make sure this function works well. I just walked there
while debugging the bug, and although it was innocent, adding this assertion
is logical.
* UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
(WebKit::PluginProcessProxy::scanPlugin):
The ASSERT was wrong. We have three lines, each ends in a newline, so split
with allowEmptyEntries=true will devide it to 4 substrings.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@139600 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebKit2/ChangeLog
Source/WebKit2/Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp
Source/WebKit2/UIProcess/Plugins/qt/PluginProcessProxyQt.cpp

index cd9eaa3..8909ecd 100644 (file)
@@ -1,3 +1,22 @@
+2013-01-11  Balazs Kelemen  <kbalazs@webkit.org>
+
+        [Qt][WK2] plugin tests assert in debug
+        https://bugs.webkit.org/show_bug.cgi?id=106659
+
+        Reviewed by Benjamin Poulain.
+
+        Fixed the misuse of String::split.
+
+        * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
+        (WebKit::truncateToSingleLine):
+        Add an assert to make sure this function works well. I just walked there
+        while debugging the bug, and although it was innocent, adding this assertion
+        is logical.
+        * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
+        (WebKit::PluginProcessProxy::scanPlugin):
+        The ASSERT was wrong. We have three lines, each ends in a newline, so split
+        with allowEmptyEntries=true will devide it to 4 substrings.
+
 2013-01-11  Filip Pizlo  <fpizlo@apple.com>
 
         JITThunks should not compile only because of luck
index 62b53f9..4715746 100644 (file)
@@ -172,9 +172,9 @@ static String truncateToSingleLine(const String& string)
     }
     buffer[newLength++] = UChar('\n');
 
-    if (newLength == oldLength + 1)
-        return stringBuffer;
-    return String(stringBuffer.characters16(), newLength);
+    String result = (newLength == oldLength + 1) ? stringBuffer : String(stringBuffer.characters16(), newLength);
+    ASSERT(result.endsWith(UChar('\n')));
+    return result;
 }
 
 bool NetscapePluginModule::scanPlugin(const String& pluginPath)
index 8b4e359..cb4884d 100644 (file)
@@ -208,7 +208,7 @@ bool PluginProcessProxy::scanPlugin(const String& pluginPath, RawPluginMetaData&
         String output(reinterpret_cast<const UChar*>(outputBytes.constData()), outputBytes.size() / sizeof(UChar));
         Vector<String> lines;
         output.split(UChar('\n'), true, lines);
-        ASSERT(lines.size() == 3);
+        ASSERT(lines.size() == 4 && lines.last().isEmpty());
 
         result.name.swap(lines[0]);
         result.description.swap(lines[1]);