diff options
Diffstat (limited to 'winsup/cygwin/dcrt0.cc')
-rw-r--r-- | winsup/cygwin/dcrt0.cc | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc index 2959c6f08..f55b26d22 100644 --- a/winsup/cygwin/dcrt0.cc +++ b/winsup/cygwin/dcrt0.cc @@ -959,6 +959,12 @@ do_exit (int status) UINT n = (UINT) status; static int NO_COPY exit_state = 0; + syscall_printf ("do_exit (%d)", n); + + vfork_save *vf = vfork_storage.val (); + if (vf != NULL && vf->pid < 0) + vf->restore_exit (status); + if (!DisableThreadLibraryCalls (cygwin_hmodule)) system_printf ("DisableThreadLibraryCalls (%p) failed, %E", cygwin_hmodule); @@ -969,12 +975,6 @@ do_exit (int status) cygthread::terminate (); } - syscall_printf ("do_exit (%d)", n); - - vfork_save *vf = vfork_storage.val (); - if (vf != NULL && vf->pid < 0) - vf->restore_exit (status); - if (exit_state < ES_SIGNAL) { exit_state = ES_SIGNAL; |