lib/sqlite: to_sql_string escape `\`
authorAlexis Laferrière <alexis.laf@xymus.net>
Mon, 4 Apr 2016 21:08:52 +0000 (17:08 -0400)
committerAlexis Laferrière <alexis.laf@xymus.net>
Tue, 5 Apr 2016 13:04:03 +0000 (09:04 -0400)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

lib/sqlite3/sqlite3.nit

index a88b718..1d6287a 100644 (file)
@@ -282,16 +282,18 @@ end
 interface Sqlite3Data end
 
 redef universal Int super Sqlite3Data end
+
 redef universal Float super Sqlite3Data end
+
 redef class String
        super Sqlite3Data
 
-       # Return `self` between `'`s and escaping any extra `'`
+       # Return `self` between `'`s, escaping `\` and `'`
        #
        #     assert "'; DROP TABLE students".to_sql_string == "'''; DROP TABLE students'"
        fun to_sql_string: String
        do
-               return "'{self.replace('\'', "''")}'"
+               return "'{self.replace('\\', "\\\\").replace('\'', "''")}'"
        end
 end