1
0
mirror of https://github.com/postgres/postgres.git synced 2025-05-05 09:19:17 +03:00

Re-enable autoruns for cmd.exe on Windows

This acts as a revert of b83747a8a65b and 9886744a361b.  As pointed out
by Noah, HEAD and REL_17_STABLE are in a weird state where the code
paths adding /D would limit the spawn of child processes, but we still
have code paths where the spawn of more than one child process(es) would
be possible.

Let's remove these /D switches for now, to bring back the code into a
state consistent with how autorun is configured on a Windows host.

Reported-by: Noah Misch
Discussion: https://postgr.es/m/20240630021211.f3.nmisch@google.com
Backpatch-through: 17
This commit is contained in:
Michael Paquier 2024-07-08 09:43:59 +09:00
parent 066e8ac6ea
commit 74b8e6a698
2 changed files with 3 additions and 3 deletions

View File

@ -552,11 +552,11 @@ start_postmaster(void)
else
close(fd);
cmd = psprintf("\"%s\" /D /C \"\"%s\" %s%s < \"%s\" >> \"%s\" 2>&1\"",
cmd = psprintf("\"%s\" /C \"\"%s\" %s%s < \"%s\" >> \"%s\" 2>&1\"",
comspec, exec_path, pgdata_opt, post_opts, DEVNULL, log_file);
}
else
cmd = psprintf("\"%s\" /D /C \"\"%s\" %s%s < \"%s\" 2>&1\"",
cmd = psprintf("\"%s\" /C \"\"%s\" %s%s < \"%s\" 2>&1\"",
comspec, exec_path, pgdata_opt, post_opts, DEVNULL);
if (!CreateRestrictedProcess(cmd, &pi, false))

View File

@ -1244,7 +1244,7 @@ spawn_process(const char *cmdline)
comspec = "CMD";
memset(&pi, 0, sizeof(pi));
cmdline2 = psprintf("\"%s\" /d /c \"%s\"", comspec, cmdline);
cmdline2 = psprintf("\"%s\" /c \"%s\"", comspec, cmdline);
if (!CreateRestrictedProcess(cmdline2, &pi))
exit(2);