# HG changeset patch # User Ryan C. Gordon # Date 1077808371 0 # Node ID 2bac79e278686ad46764852827e3d66b83281a9c # Parent 6b28c91bf3d2da6e3d9f395458892bd0df741f54 Create a 2D window and then manually focus a different window on your desktop, call SDL_PumpEvents() so the X11 driver sets its this->hidden->switch_waiting, then set a fullscreen OpenGL window (which makes the X11 driver tear down and create a new window instead of just resizing the existing one), poll for events, and the newly-created window will think it needs to pop back to a window. Fixed by resetting switch_waiting to zero if X11_CreateWindow() had to tear down a previous window. diff -r 6b28c91bf3d2 -r 2bac79e27868 src/video/x11/SDL_x11video.c --- a/src/video/x11/SDL_x11video.c Thu Feb 26 14:26:07 2004 +0000 +++ b/src/video/x11/SDL_x11video.c Thu Feb 26 15:12:51 2004 +0000 @@ -665,6 +665,7 @@ /* If a window is already present, destroy it and start fresh */ if ( SDL_Window ) { X11_DestroyWindow(this, screen); + switch_waiting = 0; /* Prevent jump back to now-meaningless state. */ } /* See if we have been given a window id */