diff src/postgres.sml @ 1656:3e7c7e200713

Fix handling of quotes in generating C literals
author Adam Chlipala <adam@chlipala.net>
date Mon, 02 Jan 2012 17:08:39 -0500
parents 1bfd793e7eb8
children ac141fbb313a
line wrap: on
line diff
--- a/src/postgres.sml	Mon Jan 02 16:54:18 2012 -0500
+++ b/src/postgres.sml	Mon Jan 02 17:08:39 2012 -0500
@@ -337,7 +337,7 @@
                                                   box [string "res = PQprepare(conn, \"uw",
                                                        string (Int.toString i),
                                                        string "\", \"",
-                                                       string (String.toCString s),
+                                                       string (Prim.toCString s),
                                                        string "\", ",
                                                        string (Int.toString n),
                                                        string ", NULL);",
@@ -355,7 +355,7 @@
                                                             string "PQfinish(conn);",
                                                             newline,
                                                             string "uw_error(ctx, FATAL, \"Unable to create prepared statement:\\n",
-                                                            string (String.toCString s),
+                                                            string (Prim.toCString s),
                                                             string "\\n%s\", msg);",
                                                             newline],
                                                        string "}",
@@ -481,7 +481,7 @@
          string "char *env_db_str = getenv(\"URWEB_PQ_CON\");",
 	 newline,
          string "PGconn *conn = PQconnectdb(env_db_str == NULL ? \"",
-         string (String.toCString dbstring),
+         string (Prim.toCString dbstring),
          string "\" : env_db_str);",
          newline,
          string "if (conn == NULL) uw_error(ctx, FATAL, ",
@@ -732,14 +732,14 @@
                   string ", paramValues, paramLengths, paramFormats, 0);"]
          else
              box [string "PQexecParams(conn, \"",
-                  string (String.toCString query),
+                  string (Prim.toCString query),
                   string "\", ",
                   string (Int.toString (length inputs)),
                   string ", NULL, paramValues, paramLengths, paramFormats, 0);"],
          newline,
          newline,
          queryCommon {loc = loc, cols = cols, doCols = doCols, query = box [string "\"",
-                                                                            string (String.toCString query),
+                                                                            string (Prim.toCString query),
                                                                             string "\""]}]
 
 fun dmlCommon {loc, dml, mode} =
@@ -888,14 +888,14 @@
                   string ", paramValues, paramLengths, paramFormats, 0);"]
          else
              box [string "PQexecParams(conn, \"",
-                  string (String.toCString dml),
+                  string (Prim.toCString dml),
                   string "\", ",
                   string (Int.toString (length inputs)),
                   string ", NULL, paramValues, paramLengths, paramFormats, 0);"],
          newline,
          newline,
          dmlCommon {loc = loc, dml = box [string "\"",
-                                          string (String.toCString dml),
+                                          string (Prim.toCString dml),
                                           string "\""], mode = mode}]
 
 fun nextvalCommon {loc, query} =
@@ -972,12 +972,12 @@
                   string "\", 0, NULL, NULL, NULL, 0);"]
          else
              box [string "PQexecParams(conn, \"",
-                  string (String.toCString query),
+                  string (Prim.toCString query),
                   string "\", 0, NULL, NULL, NULL, NULL, 0);"],
          newline,
          newline,
          nextvalCommon {loc = loc, query = box [string "\"",
-                                                string (String.toCString query),
+                                                string (Prim.toCString query),
                                                 string "\""]}]
 
 fun setvalCommon {loc, query} =
@@ -1030,7 +1030,7 @@
                                                  else
                                                      "\\" ^ StringCvt.padLeft #"0" 3
                                                                               (Int.fmt StringCvt.OCT (ord ch)))
-                                             (String.toCString s) ^ "'::text"
+                                             (Prim.toCString s) ^ "'::text"
 
 fun p_cast (s, t) = s ^ "::" ^ p_sql_type t