From 08aaae40e18e89065b191dbcaae54ab87ce63979 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Wed, 11 Feb 2015 22:06:04 -0500 Subject: [PATCH] pg_upgrade: quote directory names in delete_old_cluster script This allows the delete script to properly function when special characters appear in directory paths, e.g. spaces. Backpatch through 9.0 --- contrib/pg_upgrade/check.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/contrib/pg_upgrade/check.c b/contrib/pg_upgrade/check.c index 4a0e69ef471..1ca6366f5ba 100644 --- a/contrib/pg_upgrade/check.c +++ b/contrib/pg_upgrade/check.c @@ -483,7 +483,7 @@ create_script_for_old_cluster_deletion( #endif /* delete old cluster's default tablespace */ - fprintf(script, RMDIR_CMD " %s\n", fix_path_separator(old_cluster.pgdata)); + fprintf(script, RMDIR_CMD " \"%s\"\n", fix_path_separator(old_cluster.pgdata)); /* delete old cluster's alternate tablespaces */ for (tblnum = 0; tblnum < os_info.num_tablespaces; tblnum++) @@ -507,7 +507,7 @@ create_script_for_old_cluster_deletion( for (dbnum = 0; dbnum < new_cluster.dbarr.ndbs; dbnum++) { - fprintf(script, RMDIR_CMD " %s%s%c%d\n", + fprintf(script, RMDIR_CMD " \"%s%s%c%d\"\n", fix_path_separator(os_info.tablespaces[tblnum]), fix_path_separator(old_cluster.tablespace_suffix), PATH_SEPARATOR, old_cluster.dbarr.dbs[dbnum].db_oid); @@ -519,7 +519,7 @@ create_script_for_old_cluster_deletion( * Simply delete the tablespace directory, which might be ".old" * or a version-specific subdirectory. */ - fprintf(script, RMDIR_CMD " %s%s\n", + fprintf(script, RMDIR_CMD " \"%s%s\"\n", fix_path_separator(os_info.tablespaces[tblnum]), fix_path_separator(old_cluster.tablespace_suffix)); }