From a7670c1e828fd3f628aee3c6d77b9c40bf429b0c Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Sat, 21 Jul 2001 03:20:01 +0000 Subject: * cygheap.cc (cygheap_fixup_in_child): Attempt Win95 workaround. * dtable.cc (dtable::dup_worker): Add debugging output. (dtable::vfork_child_dup): Correctly set close_on_exec. * fhandler.cc (fhandler_base::fork_fixup): Don't mess with handle if there is no need to get it from the parent. * fhandler_tty.cc (fhandler_tty_common::close): Add debugging output. --- winsup/cygwin/fhandler.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'winsup/cygwin/fhandler.cc') diff --git a/winsup/cygwin/fhandler.cc b/winsup/cygwin/fhandler.cc index 65ef21411..e30348ac8 100644 --- a/winsup/cygwin/fhandler.cc +++ b/winsup/cygwin/fhandler.cc @@ -1542,7 +1542,9 @@ fhandler_base::set_inheritance (HANDLE &h, int not_inheriting, const char *namep void fhandler_base::fork_fixup (HANDLE parent, HANDLE &h, const char *name) { - if (!DuplicateHandle (parent, h, hMainProc, &h, 0, !get_close_on_exec (), + if (!get_close_on_exec ()) + debug_printf ("handle %p already opened", h); + else if (!DuplicateHandle (parent, h, hMainProc, &h, 0, !get_close_on_exec (), DUPLICATE_SAME_ACCESS)) system_printf ("%s - %E, handle %s<%p>", get_name (), name, h); } -- cgit v1.2.3