From eb4f9669716367912244182dd0eb788759f800ec Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 28 Jan 2012 16:50:21 +0000 Subject: Fix failures on MS-Windows when Make's standard handles are invalid. This can happen when Make is invoked from a GUI application. * w32/subproc/sub_proc.c (process_init_fd): Don't dereference pproc if it is a NULL pointer. (process_begin, process_cleanup): Don't try to close pipe handles whose value is INVALID_HANDLE_VALUE. (process_easy): Initialize hIn, hOut, and hErr to INVALID_HANDLE_VALUE. If DuplicateHandle fails with ERROR_INVALID_HANDLE, duplicate a handle for the null device instead of STD_INPUT_HANDLE, STD_OUTPUT_HANDLE or STD_ERROR_HANDLE. Don't try to close pipe handles whose value is INVALID_HANDLE_VALUE. * function.c (windows32_openpipe): Initialize hIn and hErr to INVALID_HANDLE_VALUE. If DuplicateHandle fails with ERROR_INVALID_HANDLE, duplicate a handle for the null device instead of STD_INPUT_HANDLE or STD_ERROR_HANDLE. Fix indentation. Don't try to close handles whose value is INVALID_HANDLE_VALUE. --- ChangeLog | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'ChangeLog') diff --git a/ChangeLog b/ChangeLog index 7dbfdb2..ca06ec7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,25 @@ +2012-01-28 Eli Zaretskii + + Fix failures on MS-Windows when Make's standard handles are invalid. + This can happen when Make is invoked from a GUI application. + + * w32/subproc/sub_proc.c (process_init_fd): Don't dereference + pproc if it is a NULL pointer. + (process_begin, process_cleanup): Don't try to close pipe handles + whose value is INVALID_HANDLE_VALUE. + (process_easy): Initialize hIn, hOut, and hErr to + INVALID_HANDLE_VALUE. If DuplicateHandle fails with + ERROR_INVALID_HANDLE, duplicate a handle for the null device + instead of STD_INPUT_HANDLE, STD_OUTPUT_HANDLE or + STD_ERROR_HANDLE. Don't try to close pipe handles whose value is + INVALID_HANDLE_VALUE. + + * function.c (windows32_openpipe): Initialize hIn and hErr to + INVALID_HANDLE_VALUE. If DuplicateHandle fails with + ERROR_INVALID_HANDLE, duplicate a handle for the null device + instead of STD_INPUT_HANDLE or STD_ERROR_HANDLE. Fix indentation. + Don't try to close handles whose value is INVALID_HANDLE_VALUE. + 2012-01-25 Eli Zaretskii * function.c (define_new_function): Fix format strings in calls to -- cgit v1.2.3