]> source.dussan.org Git - vaadin-framework.git/commitdiff
#7478 Util.escapeHtml incorrectly converts newline to <br> and space to "&nbsp;"...
authorArtur Signell <artur.signell@itmill.com>
Thu, 25 Aug 2011 14:40:01 +0000 (14:40 +0000)
committerArtur Signell <artur.signell@itmill.com>
Thu, 25 Aug 2011 14:40:01 +0000 (14:40 +0000)
svn changeset:20662/svn branch:6.7

src/com/vaadin/terminal/gwt/client/Util.java

index 7edad795fecffdbf86cb018d2e75210576fc4b89..9d2f1d39688907b522f396a227c3c6941a5b3c93 100644 (file)
@@ -248,7 +248,14 @@ public class Util {
      */
     public static String escapeHTML(String html) {
         DOM.setInnerText(escapeHtmlHelper, html);
-        return DOM.getInnerHTML(escapeHtmlHelper);
+        String escapedText = DOM.getInnerHTML(escapeHtmlHelper);
+        if (BrowserInfo.get().isIE() && BrowserInfo.get().getIEVersion() < 9) {
+            // #7478 IE6-IE8 "incorrectly" returns "<br>" for newlines set using
+            // setInnerText. The same for " " which is converted to "&nbsp;"
+            escapedText = escapedText.replaceAll("<(BR|br)>", "\n");
+            escapedText = escapedText.replaceAll("&nbsp;", " ");
+        }
+        return escapedText;
     }
 
     /**