X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=pipex_win32.c;h=5b18b06fc2b08b8bf75eac63ed2191c1aef3a2a5;hb=bb6c47f77f59067c358579a71cefa1ae65180a30;hp=24199b71e086b3e5887436044f704f82def6d5b1;hpb=1087eb7b2d8447adf9a7deb549d4004a87b46b10;p=polyglot.git diff --git a/pipex_win32.c b/pipex_win32.c index 24199b7..5b18b06 100644 --- a/pipex_win32.c +++ b/pipex_win32.c @@ -92,7 +92,7 @@ void pipex_open(pipex_t *pipex, si.hStdInput = hStdinRead; si.hStdOutput = hStdoutWrite; si.hStdError = hStdoutWrite; - if((szCurrentDir = _getcwd( NULL, 0 )) == NULL ) + if((szCurrentDir = (char*)_getcwd( NULL, 0 )) == NULL ) my_fatal("pipex_open(): no current directory: %s\n", strerror(errno)); if(_chdir(szWorkingDir)){ @@ -118,7 +118,7 @@ void pipex_open(pipex_t *pipex, pipex->bConsole = FALSE; pipex->bPipe=TRUE; }else{ - my_fatal("pipex_open(): %s",win32_error()); + my_fatal("pipex_open(): %s: %s",szProcFile,win32_error()); } _chdir(szCurrentDir); } @@ -191,9 +191,9 @@ void pipex_send_eof(pipex_t *pipex) { // pipex_exit() void pipex_exit(pipex_t *pipex) { + DWORD lpexit; CloseHandle(pipex->hInput); CloseHandle(pipex->hOutput); - DWORD lpexit; if(GetExitCodeProcess(pipex->hProcess,&lpexit)){ if(lpexit==STILL_ACTIVE) @@ -429,12 +429,13 @@ void pipex_set_priority(pipex_t *pipex, int value){ // pipex_set_affinit() +typedef void (WINAPI *SPAM)(HANDLE, int); void pipex_set_affinity(pipex_t *pipex, int value){ + SPAM pSPAM; + if(pipex->hProcess) return; if(value==-1) return; - typedef void (WINAPI *SPAM)(HANDLE, int); - SPAM pSPAM; pSPAM = (SPAM) GetProcAddress( GetModuleHandle(TEXT("kernel32.dll")), "SetProcessAffinityMask");