summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMagnus Svensson <msvensson@mysql.com>2009-02-06 08:38:24 +0100
committerMagnus Svensson <msvensson@mysql.com>2009-02-06 08:38:24 +0100
commite1510d5aa8f5b5b5ac99c0756f935b8839d59ce4 (patch)
tree5c2332396375762573e948b80eef5eaa055b8a11
parent5d130827f6528e276a0786690d9844848909195a (diff)
downloadmariadb-git-e1510d5aa8f5b5b5ac99c0756f935b8839d59ce4.tar.gz
Bug#42641 mtr.pl fails to run within JobObject
- Allow the new process to break away from any job that this process is part of so that it can be assigned to the new JobObject we just created. This is safe since the new JobObject is created with the JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE flag, making sure it will be terminated when the last handle to it is closed(which is owned by this process).
-rwxr-xr-xmysql-test/lib/My/SafeProcess/safe_process_win.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/mysql-test/lib/My/SafeProcess/safe_process_win.cc b/mysql-test/lib/My/SafeProcess/safe_process_win.cc
index 8aa603a8793..640254875c9 100755
--- a/mysql-test/lib/My/SafeProcess/safe_process_win.cc
+++ b/mysql-test/lib/My/SafeProcess/safe_process_win.cc
@@ -237,12 +237,19 @@ int main(int argc, const char** argv )
/*
Create the process suspended to make sure it's assigned to the
Job before it creates any process of it's own
+
+ Allow the new process to break away from any job that this
+ process is part of so that it can be assigned to the new JobObject
+ we just created. This is safe since the new JobObject is created with
+ the JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE flag, making sure it will be
+ terminated when the last handle to it is closed(which is owned by
+ this process).
*/
if (CreateProcess(NULL, (LPSTR)child_args,
NULL,
NULL,
TRUE, /* inherit handles */
- CREATE_SUSPENDED,
+ CREATE_SUSPENDED | CREATE_BREAKAWAY_FROM_JOB,
NULL,
NULL,
&si,