Use native path separators to pg_ctl in initdb

On Windows, CMD.EXE allegedly does not run a command that uses forward slashes,
so let's convert the path to use backslashes instead.

Backpatch to 10.

Author: Nitin Jadhav <nitinjadhavpostgres@gmail.com>
Reviewed-by: Juan José Santamaría Flecha <juanjo.santamaria@gmail.com>
Discussion: https://postgr.es/m/CAMm1aWaNDuaPYFYMAqDeJrZmPtNvLcJRS++CcZWY8LT6KcoBZw@mail.gmail.com
This commit is contained in:
Alvaro Herrera 2021-03-02 15:39:34 -03:00
parent d1c6edd31d
commit ae1c1d84ea
No known key found for this signature in database
GPG Key ID: 1C20ACB9D5C564AE

View File

@ -3401,6 +3401,9 @@ main(int argc, char *argv[])
/* ... and tag on pg_ctl instead */
join_path_components(pg_ctl_path, pg_ctl_path, "pg_ctl");
/* Convert the path to use native separators */
make_native_path(pg_ctl_path);
/* path to pg_ctl, properly quoted */
appendShellString(start_db_cmd, pg_ctl_path);