Fixed input not working when coming out of a game.
This commit is contained in:
parent
6efffab0c5
commit
fc69f56b9a
1 changed files with 16 additions and 0 deletions
16
src/main.c
16
src/main.c
|
@ -493,6 +493,14 @@ int SetSoftVideoMode(int Width, int Height, int Depth)
|
||||||
isgrab = SDL_GRAB_OFF;
|
isgrab = SDL_GRAB_OFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// reset input
|
||||||
|
memset((void*) KeyboardInput, 0, MAX_NUMBER_OF_INPUT_KEYS);
|
||||||
|
GotAnyKey = 0;
|
||||||
|
|
||||||
|
// force restart the video system
|
||||||
|
SDL_QuitSubSystem(SDL_INIT_VIDEO);
|
||||||
|
SDL_InitSubSystem(SDL_INIT_VIDEO);
|
||||||
|
|
||||||
if ((surface = SDL_SetVideoMode(Width, Height, Depth, flags)) == NULL) {
|
if ((surface = SDL_SetVideoMode(Width, Height, Depth, flags)) == NULL) {
|
||||||
fprintf(stderr, "(Software) SDL SetVideoMode failed: %s\n", SDL_GetError());
|
fprintf(stderr, "(Software) SDL SetVideoMode failed: %s\n", SDL_GetError());
|
||||||
exit(EXIT_FAILURE);
|
exit(EXIT_FAILURE);
|
||||||
|
@ -551,6 +559,14 @@ int SetOGLVideoMode(int Width, int Height)
|
||||||
isgrab = SDL_GRAB_OFF;
|
isgrab = SDL_GRAB_OFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// reset input
|
||||||
|
memset((void*) KeyboardInput, 0, MAX_NUMBER_OF_INPUT_KEYS);
|
||||||
|
GotAnyKey = 0;
|
||||||
|
|
||||||
|
// force restart the video system
|
||||||
|
SDL_QuitSubSystem(SDL_INIT_VIDEO);
|
||||||
|
SDL_InitSubSystem(SDL_INIT_VIDEO);
|
||||||
|
|
||||||
load_opengl_library(opengl_library);
|
load_opengl_library(opengl_library);
|
||||||
|
|
||||||
SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 5);
|
SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 5);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue