summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMagnus Hagander <magnus@hagander.net>2008-03-04 15:38:31 +0000
committerMagnus Hagander <magnus@hagander.net>2008-03-04 15:38:31 +0000
commit9b8a93baa45d186ff6027bd5df7e72a4bf26da71 (patch)
tree1db84b152d74b0b4c38e2a6a23cc2a9e8a30485c /src
parent2c63d8405bf4dcc50676f5817083fd19b1e4181a (diff)
Use windows DACL fix for pg_regress as well.
Dave Page
Diffstat (limited to 'src')
-rw-r--r--src/test/regress/pg_regress.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 4eca8482d8b..71ef94d2d5a 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -11,7 +11,7 @@
* Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/test/regress/pg_regress.c,v 1.42 2008/02/20 22:44:16 tgl Exp $
+ * $PostgreSQL: pgsql/src/test/regress/pg_regress.c,v 1.43 2008/03/04 15:38:31 mha Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1009,14 +1009,30 @@ spawn_process(const char *cmdline)
cmdline2 = malloc(strlen(cmdline) + 8);
sprintf(cmdline2, "cmd /c %s", cmdline);
- if (!CreateProcessAsUser(restrictedToken, NULL, cmdline2, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi))
+ if (!CreateProcessAsUser(restrictedToken,
+ NULL,
+ cmdline2,
+ NULL,
+ NULL,
+ TRUE,
+ CREATE_SUSPENDED,
+ NULL,
+ NULL,
+ &si,
+ &pi))
{
fprintf(stderr, _("could not start process for \"%s\": %lu\n"),
cmdline2, GetLastError());
exit_nicely(2);
}
+
+#ifndef __CYGWIN__
+ AddUserToDacl(pi.hProcess);
+#endif
+
free(cmdline2);
+ ResumeThread(pi.hThread);
CloseHandle(pi.hThread);
return pi.hProcess;
#endif