From 4fc406c935d3896553e5f925e271428f92996d3c Mon Sep 17 00:00:00 2001 From: Danny Smith Date: Thu, 1 Apr 2004 10:04:04 +0000 Subject: [PATCH] * crt1.c (_mingw32_init_fmode): Set *_imp___fmode_dll to _fmode if not __MSVCRT__. --- winsup/mingw/ChangeLog | 5 +++++ winsup/mingw/crt1.c | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/winsup/mingw/ChangeLog b/winsup/mingw/ChangeLog index b72927803..23fd99e64 100644 --- a/winsup/mingw/ChangeLog +++ b/winsup/mingw/ChangeLog @@ -1,3 +1,8 @@ +2004-04-01 Danny Smith + + * crt1.c (_mingw32_init_fmode): Set *_imp___fmode_dll to + _fmode if not __MSVCRT__. + 2004-03-30 Danny Smith * include/io.h: (_findfirst): Correct prototype. diff --git a/winsup/mingw/crt1.c b/winsup/mingw/crt1.c index e589b4c14..674bfe3b4 100644 --- a/winsup/mingw/crt1.c +++ b/winsup/mingw/crt1.c @@ -68,7 +68,9 @@ __MINGW_IMPORT void __set_app_type(int); /* Override the dllimport'd declarations in stdlib.h */ #undef _fmode extern int _fmode; +#ifdef __MSVCRT__ extern int* __p__fmode(void); /* To access the dll _fmode */ +#endif /* * Setup the default file handles to have the _CRT_fmode mode, as well as @@ -106,7 +108,11 @@ _mingw32_init_fmode () } /* Now sync the dll _fmode to the one for this .exe. */ +#ifdef __MSVCRT__ *__p__fmode() = _fmode; +#else + *_imp___fmode_dll = _fmode; +#endif }