=== modified file 'src/com/mysql/jdbc/EscapeTokenizer.java' --- src/com/mysql/jdbc/EscapeTokenizer.java 2008-10-20 22:29:45 +0000 +++ src/com/mysql/jdbc/EscapeTokenizer.java 2009-02-12 20:30:57 +0000 @@ -104,7 +104,7 @@ this.sawVariableUse = true; } - if (c == '\'' || c == '"') { + if ((c == '\'' || c == '"') && !inComment) { if (this.inQuotes && c == quoteChar) { if (this.pos + 1 < this.sourceLength) { if (this.source.charAt(this.pos + 1) == quoteChar) { === modified file 'src/testsuite/regression/StatementRegressionTest.java' --- src/testsuite/regression/StatementRegressionTest.java 2009-02-02 17:00:13 +0000 +++ src/testsuite/regression/StatementRegressionTest.java 2009-02-12 20:31:29 +0000 @@ -5825,4 +5825,17 @@ closeMemberJDBCResources(); } } + + /** + * Bug #41566 - Quotes within comments not correctly ignored by escape parser + */ + public void testBug41566() throws Exception { + try { + rs = stmt.executeQuery("-- this should't change the literal\n select '{1}'"); + rs.next(); + assertEquals("{1}", rs.getString(1)); + } finally { + closeMemberJDBCResources(); + } + } } \ No newline at end of file