postgres.git / summary / log / commit / refs
commit e3f273ff6220dfd41eb155a4ed9fdf27b975794c
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date: Wed Apr 30 07:34:15 2014 +0000
Add missing SYSTEMQUOTEs
Some popen() calls were missing SYSTEMQUOTEs, which caused initdb and
pg_upgrade to fail on Windows, if the installation path contained both
spaces and @ signs.
Patch by Nikhil Deshpande. Backpatch to all supported versions.
src/bin/initdb/initdb.c | 28 ++++++++++++++--------------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c
index 4ddd94e3bba..1084267c772 100644
--- a/src/bin/initdb/initdb.c
+++ b/src/bin/initdb/initdb.c
@@ -1369,7 +1369,7 @@ bootstrap_template1(char *short_version)
unsetenv("PGCLIENTENCODING");
snprintf(cmd, sizeof(cmd),
- "\"%s\" --boot -x1 %s %s",
+ SYSTEMQUOTE "\"%s\" --boot -x1 %s %s" SYSTEMQUOTE,
backend_exec, boot_options, talkargs);
PG_CMD_OPEN;
@@ -1422,7 +1422,7 @@ setup_auth(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1502,7 +1502,7 @@ get_set_pwd(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1610,7 +1610,7 @@ setup_depend(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1643,7 +1643,7 @@ setup_sysviews(void)
* We use -j here to avoid backslashing stuff in system_views.sql
*/
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s -j template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s -j template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1674,7 +1674,7 @@ setup_description(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1726,7 +1726,7 @@ setup_conversion(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1764,7 +1764,7 @@ setup_dictionary(void)
* We use -j here to avoid backslashing stuff
*/
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s -j template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s -j template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1814,7 +1814,7 @@ setup_privileges(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1877,7 +1877,7 @@ setup_schema(void)
* We use -j here to avoid backslashing stuff in information_schema.sql
*/
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s -j template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s -j template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1894,7 +1894,7 @@ setup_schema(void)
PG_CMD_CLOSE;
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1928,7 +1928,7 @@ vacuum_db(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -1982,7 +1982,7 @@ make_template0(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
@@ -2013,7 +2013,7 @@ make_postgres(void)
fflush(stdout);
snprintf(cmd, sizeof(cmd),
- "\"%s\" %s template1 >%s",
+ SYSTEMQUOTE "\"%s\" %s template1 >%s" SYSTEMQUOTE,
backend_exec, backend_options,
DEVNULL);
[parent: be249420414e]