Skip to content

Commit

Permalink
Fixed compile errors and added call to SDL_SetModuleHandle() in WinMa…
Browse files Browse the repository at this point in the history
…in()
  • Loading branch information
slouken committed Aug 9, 2001
1 parent d17be8c commit 41eb9f4
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 11 deletions.
4 changes: 2 additions & 2 deletions include/SDL_main.h
Expand Up @@ -64,9 +64,9 @@ extern "C" {
#endif

/* This should be called from your WinMain() function, if any */
extern DECLSPEC void SDL_SetModuleHandle(HMODULE hInst);
extern DECLSPEC void SDL_SetModuleHandle(void *hInst);
/* This can also be called, but is no longer necessary */
extern DECLSPEC int SDL_RegisterApp(char *name, Uint32 style, HMODULE hInst);
extern DECLSPEC int SDL_RegisterApp(char *name, Uint32 style, void *hInst);

#ifdef __cplusplus
}
Expand Down
17 changes: 13 additions & 4 deletions src/main/win32/SDL_main.c
Expand Up @@ -199,16 +199,25 @@ int console_main(int argc, char *argv[])
atexit(SDL_Quit);

#ifndef DISABLE_VIDEO
#if 0
/* Create and register our class *
DJM: If we do this here, the user nevers gets a chance to
putenv(SDL_WINDOWID). This is already called later by
the (DIB|DX5)_CreateWindow function, so it should be
safe to comment it out here.
DJM: If we do this here, the user nevers gets a chance to
putenv(SDL_WINDOWID). This is already called later by
the (DIB|DX5)_CreateWindow function, so it should be
safe to comment it out here.
if ( SDL_RegisterApp(appname, CS_BYTEALIGNCLIENT,
GetModuleHandle(NULL)) < 0 ) {
ShowError("WinMain() error", SDL_GetError());
exit(1);
}*/
#else
/* Sam:
We still need to pass in the application handle so that
DirectInput will initialize properly when SDL_RegisterApp()
is called later in the video initialization.
*/
SDL_SetModuleHandle(GetModuleHandle(NULL));
#endif /* 0 */
#endif /* !DISABLE_VIDEO */

/* Run the application main() code */
Expand Down
10 changes: 5 additions & 5 deletions src/video/wincommon/SDL_sysevents.c
Expand Up @@ -504,13 +504,13 @@ LONG CALLBACK WinMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
}

/* Allow the application handle to be stored and retrieved later */
static HMODULE SDL_handle = NULL;
static void *SDL_handle = NULL;

void SDL_SetModuleHandle(HMODULE handle)
void SDL_SetModuleHandle(void *handle)
{
SDL_handle = handle;
}
HMODULE SDL_GetModuleHandle(void)
void *SDL_GetModuleHandle(void)
{
void *handle;

Expand All @@ -531,7 +531,7 @@ HMODULE SDL_GetModuleHandle(void)
const char *SDL_windowid = NULL;

/* Register the class for this application -- exported for winmain.c */
int SDL_RegisterApp(char *name, Uint32 style, HMODULE hInst)
int SDL_RegisterApp(char *name, Uint32 style, void *hInst)
{
static int initialized = 0;
WNDCLASS class;
Expand Down Expand Up @@ -571,7 +571,7 @@ int SDL_RegisterApp(char *name, Uint32 style, HMODULE hInst)
class.lpszClassName = name;
#endif /* _WIN32_WCE */
class.hbrBackground = NULL;
class.hInstance = hInst ? hInst : GetModuleHandle(0);
class.hInstance = hInst;
class.style = style;
#ifdef HAVE_OPENGL
class.style |= CS_OWNDC;
Expand Down

0 comments on commit 41eb9f4

Please sign in to comment.