From 27802c599d26c3358cb9870b6861cd32209bbe58 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Tue, 21 Aug 2007 10:10:28 +0000 Subject: [PATCH] Make ghc-inplace return GHC's exitcode on Windows --- compiler/ghc-inplace.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/compiler/ghc-inplace.c b/compiler/ghc-inplace.c index 78cffba..83f6834 100644 --- a/compiler/ghc-inplace.c +++ b/compiler/ghc-inplace.c @@ -51,6 +51,7 @@ int run(char *this, char *program, int argc, char** argv) { int run(char *this, char *program, int argc, char** argv) { TCHAR programShort[MAX_PATH+1]; DWORD dwSize; + DWORD dwExitCode; int i; char* new_cmdline; char *ptr; @@ -131,7 +132,12 @@ int run(char *this, char *program, int argc, char** argv) { switch (WaitForSingleObject(pi.hProcess, INFINITE) ) { case WAIT_OBJECT_0: - return 0; + if (GetExitCodeProcess(pi.hProcess, &dwExitCode)) { + return dwExitCode; + } + else { + return 1; + } case WAIT_ABANDONED: case WAIT_FAILED: /* in the event we get any hard errors, bring the child -- 1.7.10.4