Author: mrdon
Date: Wed Apr 20 17:02:00 2005
New Revision: 162094

URL: http://svn.apache.org/viewcvs?rev=162094&view=rev
Log:
Fixing validator tag to escape double quotes in variable values
PR: 33238

Modified:
    
struts/taglib/trunk/src/java/org/apache/struts/taglib/html/JavascriptValidatorTag.java

Modified: 
struts/taglib/trunk/src/java/org/apache/struts/taglib/html/JavascriptValidatorTag.java
URL: 
http://svn.apache.org/viewcvs/struts/taglib/trunk/src/java/org/apache/struts/taglib/html/JavascriptValidatorTag.java?rev=162094&r1=162093&r2=162094&view=diff
==============================================================================
--- 
struts/taglib/trunk/src/java/org/apache/struts/taglib/html/JavascriptValidatorTag.java
 (original)
+++ 
struts/taglib/trunk/src/java/org/apache/struts/taglib/html/JavascriptValidatorTag.java
 Wed Apr 20 17:02:00 2005
@@ -511,26 +511,29 @@
                         continue;
                     }
 
+                    String varValueEscaped = ValidatorUtils.replace(varValue, 
"\\", "\\\\");
+                    varValueEscaped = ValidatorUtils.replace(varValue, "\"", 
"\\\"");
+
                     if (Var.JSTYPE_INT.equalsIgnoreCase(jsType)) {
                         results.append(
                             "this."
                                 + varName
                                 + "="
-                                + ValidatorUtils.replace(varValue, "\\", 
"\\\\")
+                                + varValueEscaped
                                 + "; ");
                     } else if (Var.JSTYPE_REGEXP.equalsIgnoreCase(jsType)) {
                         results.append(
                             "this."
                                 + varName
                                 + "=/"
-                                + ValidatorUtils.replace(varValue, "\\", 
"\\\\")
+                                + varValueEscaped
                                 + "/; ");
                     } else if (Var.JSTYPE_STRING.equalsIgnoreCase(jsType)) {
                         results.append(
                             "this."
                                 + varName
                                 + "='"
-                                + ValidatorUtils.replace(varValue, "\\", 
"\\\\")
+                                + varValueEscaped
                                 + "'; ");
                         // So everyone using the latest format doesn't need to 
change their xml files immediately.
                     } else if ("mask".equalsIgnoreCase(varName)) {
@@ -538,14 +541,14 @@
                             "this."
                                 + varName
                                 + "=/"
-                                + ValidatorUtils.replace(varValue, "\\", 
"\\\\")
+                                + varValueEscaped
                                 + "/; ");
                     } else {
                         results.append(
                             "this."
                                 + varName
                                 + "='"
-                                + ValidatorUtils.replace(varValue, "\\", 
"\\\\")
+                                + varValueEscaped
                                 + "'; ");
                     }
                 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to