win32: Fix GDBusDaemon build when glib is built as a static lib

This makes sure not to ifdef _g_io_win32_get_module() out when glib is
built as a static lib, and also fixes it to work when DllMain isn't
available.

The implementation uses GetModuleHandleEx() which is only available on
Windows XP and later, so this commit effectively drops the Windows 2000
support in glib. Earlier commit 731b4699 already took care of defining
_WIN32_WINNT to support the Windows XP API.

https://bugzilla.gnome.org/show_bug.cgi?id=675516
This commit is contained in:
Kalev Lember 2012-12-02 15:34:37 +01:00
parent 4a506290a7
commit 80c24d36f2

View File

@ -801,14 +801,18 @@ DllMain (HINSTANCE hinstDLL,
return TRUE;
}
#endif
void *
_g_io_win32_get_module (void)
{
if (!gio_dll)
GetModuleHandleExA (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS,
(const char *) _g_io_win32_get_module,
&gio_dll);
return gio_dll;
}
#endif
#undef GIO_MODULE_DIR
/* GIO_MODULE_DIR is used only in code called just once,