[BlackBerry] WebView/Browser cause blank screen when selecting a dropdown field.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 30 Jun 2012 22:54:56 +0000 (22:54 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 30 Jun 2012 22:54:56 +0000 (22:54 +0000)
https://bugs.webkit.org/show_bug.cgi?id=90241

This issue is caused by single quotes in option's labels.
We should use the escape character of single quotes in JavaScript's string which
starts and ends with single quotes.
So we replace lablels' single quotes with its escape character during generating the
select popUp's HTML.

.:

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-06-30
Reviewed by George Staikos.

* ManualTests/blackberry/select-popup-items-unicode-display.html:

Source/WebKit/blackberry:

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-06-30
Reviewed by George Staikos.

* WebCoreSupport/SelectPopupClient.cpp:
(WebCore::SelectPopupClient::generateHTML):

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

ChangeLog
ManualTests/blackberry/select-popup-items-unicode-display.html
Source/WebKit/blackberry/ChangeLog
Source/WebKit/blackberry/WebCoreSupport/SelectPopupClient.cpp

index 9ef46fc..3956349 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2012-06-30  Jason Liu  <jason.liu@torchmobile.com.cn>
+
+        [BlackBerry] WebView/Browser cause blank screen when selecting a dropdown field.
+        https://bugs.webkit.org/show_bug.cgi?id=90241
+
+        This issue is caused by single quotes in option's labels.
+        We should use the escape character of single quotes in JavaScript's string which 
+        starts and ends with single quotes.
+        So we replace lablels' single quotes with its escape character during generating the 
+        select popUp's HTML.
+
+
+        Reviewed by George Staikos.
+
+        * ManualTests/blackberry/select-popup-items-unicode-display.html:
+
 2012-06-29  Luiz Agostini  <luiz.agostini@nokia.com>
 
         [Qt][WK2] Private non-QtQuick API
index 582e76b..c079810 100644 (file)
@@ -9,6 +9,7 @@
         <option selected="selected">北京</option>
         <option>ShenYang</option>
         <option>澳门</option>
+        <option>Republic of Côte d'Ivoire</option>
     </select>
   </body>
 </html>
index ff17224..94d4382 100644 (file)
@@ -1,3 +1,19 @@
+2012-06-30  Jason Liu  <jason.liu@torchmobile.com.cn>
+
+        [BlackBerry] WebView/Browser cause blank screen when selecting a dropdown field.
+        https://bugs.webkit.org/show_bug.cgi?id=90241
+
+        This issue is caused by single quotes in option's labels.
+        We should use the escape character of single quotes in JavaScript's string which 
+        starts and ends with single quotes.
+        So we replace lablels' single quotes with its escape character during generating the 
+        select popUp's HTML.
+
+        Reviewed by George Staikos.
+
+        * WebCoreSupport/SelectPopupClient.cpp:
+        (WebCore::SelectPopupClient::generateHTML):
+
 2012-06-30  Jakob Petsovits  <jpetsovits@rim.com>
 
         [BlackBerry] Allow surface resizing for use cases other than rotation.
index 15f1a76..3607664 100644 (file)
@@ -82,7 +82,7 @@ void SelectPopupClient::generateHTML(bool multiple, int size, const ScopeArray<B
     // Add labels.
     source.append("[");
     for (int i = 0; i < size; i++) {
-        source.append("'" + String(labels[i].impl()) + "'");
+        source.append("'" + String(labels[i].impl()).replace("'", "\\'") + "'");
         // Don't append ',' to last element.
         if (i != size - 1)
             source.append(", ");