Module: wine Branch: master Commit: a2e1e499ade0c99ece2a7e4b9b28e4ca6c24ae22 URL: https://source.winehq.org/git/wine.git/?a=commit;h=a2e1e499ade0c99ece2a7e4b9...
Author: Alexandre Julliard julliard@winehq.org Date: Wed Apr 15 16:27:55 2020 +0200
msvcrt: Build the CRT startup code also for non-PE builds.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/msvcrt/crt_main.c | 9 +++------ dlls/msvcrt/crt_winmain.c | 4 ---- dlls/msvcrt/crt_wmain.c | 9 +++------ dlls/msvcrt/crt_wwinmain.c | 4 ---- 4 files changed, 6 insertions(+), 20 deletions(-)
diff --git a/dlls/msvcrt/crt_main.c b/dlls/msvcrt/crt_main.c index fa325d64b3..8e4a00bac7 100644 --- a/dlls/msvcrt/crt_main.c +++ b/dlls/msvcrt/crt_main.c @@ -22,8 +22,6 @@ #pragma makedep implib #endif
-#ifdef __MINGW32__ - #if _MSVCR_VER >= 140 #define _UCRT #endif @@ -34,13 +32,14 @@
#include "windef.h" #include "winbase.h" +#include "winternl.h"
int __cdecl main(int argc, char **argv, char **env);
static const IMAGE_NT_HEADERS *get_nt_header( void ) { - extern IMAGE_DOS_HEADER __ImageBase; - return (const IMAGE_NT_HEADERS *)((char *)&__ImageBase + __ImageBase.e_lfanew); + IMAGE_DOS_HEADER *dos = (IMAGE_DOS_HEADER *)NtCurrentTeb()->Peb->ImageBaseAddress; + return (const IMAGE_NT_HEADERS *)((char *)dos + dos->e_lfanew); }
int __cdecl mainCRTStartup(void) @@ -65,5 +64,3 @@ int __cdecl mainCRTStartup(void) exit(ret); return ret; } - -#endif diff --git a/dlls/msvcrt/crt_winmain.c b/dlls/msvcrt/crt_winmain.c index 27e0283cbf..fda3d12f68 100644 --- a/dlls/msvcrt/crt_winmain.c +++ b/dlls/msvcrt/crt_winmain.c @@ -22,8 +22,6 @@ #pragma makedep implib #endif
-#ifdef __MINGW32__ - #include <stdarg.h> #include "windef.h" #include "winbase.h" @@ -54,5 +52,3 @@ int __cdecl main( int argc, char *argv[] ) if (!(info.dwFlags & STARTF_USESHOWWINDOW)) info.wShowWindow = SW_SHOWNORMAL; return WinMain( GetModuleHandleA(0), 0, cmdline, info.wShowWindow ); } - -#endif diff --git a/dlls/msvcrt/crt_wmain.c b/dlls/msvcrt/crt_wmain.c index 6bc20e2e0f..6a51a1741b 100644 --- a/dlls/msvcrt/crt_wmain.c +++ b/dlls/msvcrt/crt_wmain.c @@ -22,8 +22,6 @@ #pragma makedep implib #endif
-#ifdef __MINGW32__ - #if _MSVCR_VER >= 140 #define _UCRT #endif @@ -34,13 +32,14 @@
#include "windef.h" #include "winbase.h" +#include "winternl.h"
int __cdecl wmain(int argc, WCHAR **argv, WCHAR **env);
static const IMAGE_NT_HEADERS *get_nt_header( void ) { - extern IMAGE_DOS_HEADER __ImageBase; - return (const IMAGE_NT_HEADERS *)((char *)&__ImageBase + __ImageBase.e_lfanew); + IMAGE_DOS_HEADER *dos = (IMAGE_DOS_HEADER *)NtCurrentTeb()->Peb->ImageBaseAddress; + return (const IMAGE_NT_HEADERS *)((char *)dos + dos->e_lfanew); }
int __cdecl wmainCRTStartup(void) @@ -65,5 +64,3 @@ int __cdecl wmainCRTStartup(void) exit(ret); return ret; } - -#endif diff --git a/dlls/msvcrt/crt_wwinmain.c b/dlls/msvcrt/crt_wwinmain.c index 2c53b744b5..b50f728025 100644 --- a/dlls/msvcrt/crt_wwinmain.c +++ b/dlls/msvcrt/crt_wwinmain.c @@ -22,8 +22,6 @@ #pragma makedep implib #endif
-#ifdef __MINGW32__ - #include <stdarg.h> #include "windef.h" #include "winbase.h" @@ -56,5 +54,3 @@ int __cdecl wmain( int argc, WCHAR *argv[] ) if (!(info.dwFlags & STARTF_USESHOWWINDOW)) info.wShowWindow = SW_SHOWNORMAL; return wWinMain( GetModuleHandleW(0), 0, cmdline, info.wShowWindow ); } - -#endif