From 34e0c4a4ab94971583acf1aad413e3267888b7c5 Mon Sep 17 00:00:00 2001 From: Brad King <brad.king@kitware.com> Date: Thu, 12 Jun 2003 15:58:30 -0400 Subject: [PATCH] ERR: Using GetCurrentProcessId instead of _getpid so we don't need to include the system process.h header. Also creating pipe threads with 1K stacks to save memory. --- ProcessWin32.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ProcessWin32.c b/ProcessWin32.c index fd73705..3b0f378 100644 --- a/ProcessWin32.c +++ b/ProcessWin32.c @@ -38,7 +38,6 @@ Q190351 and Q150956. #include <windows.h> /* Windows API */ #include <string.h> /* strlen, strdup */ #include <stdio.h> /* sprintf */ -#include <process.h> /* _getpid */ #include <io.h> /* _unlink */ /* The number of pipes for the child's output. The standard stdout @@ -234,7 +233,7 @@ kwsysProcess* kwsysProcess_New() /* Construct the executable name from the process id and kwsysProcess instance. This should be unique. */ - sprintf(fwdName, "cmw9xfwd_%u_%p.exe", _getpid(), cp); + sprintf(fwdName, "cmw9xfwd_%u_%p.exe", GetCurrentProcessId(), cp); /* If the environment variable "TEMP" gave us a directory, use it. */ if(length > 0 && length <= _MAX_PATH) @@ -344,8 +343,10 @@ kwsysProcess* kwsysProcess_New() return 0; } - /* Create the thread. It will block immediately. */ - if(!(cp->Pipe[i].Thread = CreateThread(0, 0, kwsysProcessPipeThread, + /* Create the thread. It will block immediately. The thread will + not make deeply nested calls, so we need only a small + stack. */ + if(!(cp->Pipe[i].Thread = CreateThread(0, 1024, kwsysProcessPipeThread, &cp->Pipe[i], 0, &dummy))) { kwsysProcess_Delete(cp); -- GitLab