Обсуждение: pgsql: pg_upgrade: quote directory names in delete_old_cluster script
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 Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/056764b10248bff702d9d7b8b97690668eaf1c93 Modified Files -------------- contrib/pg_upgrade/check.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
On 2/11/15 10:06 PM, Bruce Momjian wrote: > 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. Wouldn't single quotes be better than double quotes if you want to defend against special characters?
On Sun, Feb 15, 2015 at 12:02:44PM -0500, Peter Eisentraut wrote: > On 2/11/15 10:06 PM, Bruce Momjian wrote: > > 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. > > Wouldn't single quotes be better than double quotes if you want to > defend against special characters? I thought of that. Windows only does double-quotes, I think, and I didn't see any value to doing a platform-specific quoting. Do you? -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. +
On 2/16/15 4:44 PM, Bruce Momjian wrote: > On Sun, Feb 15, 2015 at 12:02:44PM -0500, Peter Eisentraut wrote: >> On 2/11/15 10:06 PM, Bruce Momjian wrote: >>> 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. >> >> Wouldn't single quotes be better than double quotes if you want to >> defend against special characters? > > I thought of that. Windows only does double-quotes, I think, and I > didn't see any value to doing a platform-specific quoting. Do you? All of our makefiles use single quotes, so effectively the only character we don't support in directory paths is the single quote itself.
On Mon, Feb 16, 2015 at 04:47:23PM -0500, Peter Eisentraut wrote: > On 2/16/15 4:44 PM, Bruce Momjian wrote: > > On Sun, Feb 15, 2015 at 12:02:44PM -0500, Peter Eisentraut wrote: > >> On 2/11/15 10:06 PM, Bruce Momjian wrote: > >>> 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. > >> > >> Wouldn't single quotes be better than double quotes if you want to > >> defend against special characters? > > > > I thought of that. Windows only does double-quotes, I think, and I > > didn't see any value to doing a platform-specific quoting. Do you? > > All of our makefiles use single quotes, so effectively the only > character we don't support in directory paths is the single quote itself. This seems to say that Windows batch files don't have any special meaning for single quotes: http://stackoverflow.com/questions/24173825/what-does-single-quote-do-in-windows-batch-files http://stackoverflow.com/questions/10737283/single-quotes-and-double-quotes-how-to-have-the-same-behaviour-in-unix-and-wind Again, is it worth doing something platform-specific? I can certainly define a platform-specific macro for " or ' as and use that. Good idea? -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. +