unico 2005/06/15 03:12:48
Modified: src/stores/org/apache/slide/store/impl/rdbms/expression
RDBMSCompareExpression.java
RDBMSPropContainsExpression.java
RDBMSNotPropContainsExpression.java
Log:
escape single quotes in DASL literal strings
Revision Changes Path
1.9 +12 -5
jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/expression/RDBMSCompareExpression.java
Index: RDBMSCompareExpression.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/expression/RDBMSCompareExpression.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- RDBMSCompareExpression.java 23 Nov 2004 16:04:13 -0000 1.8
+++ RDBMSCompareExpression.java 15 Jun 2005 10:12:48 -0000 1.9
@@ -90,7 +90,7 @@
return "(p" + _tableIndex + ".PROPERTY_NAME = '" + getPropertyName()
+ "' AND " +
"p" + _tableIndex + ".PROPERTY_NAMESPACE = '" +
getPropertyNamespace() + "' AND " +
"p" + _tableIndex + ".PROPERTY_VALUE " +
COMPARE_OPERATORS.get(_element.getName())
- + " '" + literal.getTextNormalize() + "')";
+ + " '" + escapeLiteral(literal.getTextNormalize()) + "')";
}
protected String join() {
@@ -122,5 +122,12 @@
protected String getPropertyNamespace() {
return getProperty().getNamespaceURI();
}
-
+
+ /**
+ * Single quotes need to be escaped.
+ */
+ protected static String escapeLiteral(String literal) {
+ return literal.replaceAll("'","''");
+ }
+
}
\ No newline at end of file
1.5 +4 -4
jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/expression/RDBMSPropContainsExpression.java
Index: RDBMSPropContainsExpression.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/expression/RDBMSPropContainsExpression.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- RDBMSPropContainsExpression.java 22 Nov 2004 13:41:30 -0000 1.4
+++ RDBMSPropContainsExpression.java 15 Jun 2005 10:12:48 -0000 1.5
@@ -52,7 +52,7 @@
}
sb.append(c);
}
- return sb.toString();
+ return escapeLiteral(sb.toString());
}
}
1.5 +4 -4
jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/expression/RDBMSNotPropContainsExpression.java
Index: RDBMSNotPropContainsExpression.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/expression/RDBMSNotPropContainsExpression.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- RDBMSNotPropContainsExpression.java 22 Nov 2004 13:41:30 -0000
1.4
+++ RDBMSNotPropContainsExpression.java 15 Jun 2005 10:12:48 -0000
1.5
@@ -52,7 +52,7 @@
}
sb.append(c);
}
- return sb.toString();
+ return escapeLiteral(sb.toString());
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]