Commit 73eadb47 authored by Sam Lantinga's avatar Sam Lantinga

Fixed bug #695

 Nomad      2009-02-08 10:34:43 PST

The 2nd init is good.
The problem is in "SDL_dibevents.c"
in DIB_CreateWindow()

in SVN:
{
    char *windowid = SDL_getenv("SDL_WINDOWID");

    SDL_RegisterApp(NULL, 0, 0);

    ... using of data to which windowid is points

problem:
    SDL_RegisterApp() may call SDL_getenv() and windowid will point to some
wrong string

solve:
    char *windowid;

    SDL_RegisterApp(NULL, 0, 0);

    windowid = SDL_getenv("SDL_WINDOWID");

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403859
parent 88928312
...@@ -653,10 +653,11 @@ static SDL_keysym *TranslateKey(WPARAM vkey, UINT scancode, SDL_keysym *keysym, ...@@ -653,10 +653,11 @@ static SDL_keysym *TranslateKey(WPARAM vkey, UINT scancode, SDL_keysym *keysym,
int DIB_CreateWindow(_THIS) int DIB_CreateWindow(_THIS)
{ {
char *windowid = SDL_getenv("SDL_WINDOWID"); char *windowid;
SDL_RegisterApp(NULL, 0, 0); SDL_RegisterApp(NULL, 0, 0);
windowid = SDL_getenv("SDL_WINDOWID");
SDL_windowid = (windowid != NULL); SDL_windowid = (windowid != NULL);
if ( SDL_windowid ) { if ( SDL_windowid ) {
#if defined(_WIN32_WCE) && (_WIN32_WCE < 300) #if defined(_WIN32_WCE) && (_WIN32_WCE < 300)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment