aboutsummaryrefslogtreecommitdiffstats
path: root/common/init.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--common/init.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/common/init.c b/common/init.c
index ce661f6c5..aa0b6a7ca 100644
--- a/common/init.c
+++ b/common/init.c
@@ -73,13 +73,21 @@ init_common_subsystems (int *argcp, char ***argvp)
# ifdef HAVE_PTH
pth_init ();
# else
- {
- WSADATA wsadat;
-
- WSAStartup (0x202, &wsadat);
- }
+ {
+ WSADATA wsadat;
+
+ WSAStartup (0x202, &wsadat);
+ }
# endif /*!HAVE_PTH*/
#endif
+
+#ifdef HAVE_W32CE_SYSTEM
+ /* Register the sleep exit function before the estream init so that
+ the sleep will be called after the estream registered atexit
+ function which flushes the left open estream streams and in
+ particular es_stdout. */
+ atexit (sleep_on_exit);
+#endif
/* Initialize the Estream library. */
es_init ();
@@ -87,7 +95,6 @@ init_common_subsystems (int *argcp, char ***argvp)
/* Special hack for Windows CE: We extract some options from arg
to setup the standard handles. */
#ifdef HAVE_W32CE_SYSTEM
- atexit (sleep_on_exit);
parse_std_file_handles (argcp, argvp);
#else
(void)argcp;