Code built by the still unstable mingw-w64 toolchain gets bogus argc and
2008-08-07 Tor Lillqvist <tml@novell.com> * app/main.c: Code built by the still unstable mingw-w64 toolchain gets bogus argc and argv when built as subsystem:windows, so use __argc and __argv instead, which seem to be OK. * libgimp/gimp.h: Similar change here. svn path=/trunk/; revision=26420
This commit is contained in:

committed by
Tor Lillqvist

parent
eb92ab8b22
commit
c1d3d25ef2
@ -1,3 +1,11 @@
|
||||
2008-08-07 Tor Lillqvist <tml@novell.com>
|
||||
|
||||
* app/main.c: Code built by the still unstable mingw-w64 toolchain
|
||||
gets bogus argc and argv when built as subsystem:windows, so use
|
||||
__argc and __argv instead, which seem to be OK.
|
||||
|
||||
* libgimp/gimp.h: Similar change here.
|
||||
|
||||
2008-08-07 Sven Neumann <sven@gimp.org>
|
||||
|
||||
* app/base/tile-manager.c (tile_manager_invalidate_tile): fixed
|
||||
|
16
app/main.c
16
app/main.c
@ -278,6 +278,16 @@ main (int argc,
|
||||
gchar *basename;
|
||||
gint i;
|
||||
|
||||
#if defined (__GNUC__) && defined (_WIN64)
|
||||
/* mingw-w64, at least the unstable build from late July 2008,
|
||||
* starts subsystem:windows programs in main(), but passes them
|
||||
* bogus argc and argv. __argc and __argv are OK, though, so just
|
||||
* use them.
|
||||
*/
|
||||
argc = __argc;
|
||||
argv = __argv;
|
||||
#endif
|
||||
|
||||
g_thread_init (NULL);
|
||||
|
||||
#ifdef GIMP_UNSTABLE
|
||||
@ -421,7 +431,11 @@ main (int argc,
|
||||
|
||||
#ifdef G_OS_WIN32
|
||||
|
||||
/* In case we build this as a windowed application. Well, we do. */
|
||||
/* Provide WinMain in case we build GIMP as a subsystem:windows
|
||||
* application. Well, we do. When built with mingw, though, user code
|
||||
* execution still starts in main() in that case. So WinMain() gets
|
||||
* used on MSVC builds only.
|
||||
*/
|
||||
|
||||
#ifdef __GNUC__
|
||||
# ifndef _stdcall
|
||||
|
@ -199,7 +199,10 @@ struct _GimpParam
|
||||
int \
|
||||
main (int argc, char *argv[]) \
|
||||
{ \
|
||||
return gimp_main (&PLUG_IN_INFO, argc, argv); \
|
||||
/* Use __argc and __argv here, too, as they work \
|
||||
* better with mingw-w64. \
|
||||
*/ \
|
||||
return gimp_main (&PLUG_IN_INFO, __argc, __argv); \
|
||||
}
|
||||
#else
|
||||
# define MAIN() \
|
||||
|
Reference in New Issue
Block a user