Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Commit

Permalink
Fix crash on X servers without UTF-8 support.
Browse files Browse the repository at this point in the history
  • Loading branch information
icculus committed Nov 1, 2011
1 parent 43ced8f commit ee9413e
Showing 1 changed file with 9 additions and 17 deletions.
26 changes: 9 additions & 17 deletions src/video/x11/SDL_x11window.c
Expand Up @@ -265,6 +265,7 @@ X11_CreateWindow(_THIS, SDL_Window * window)
Atom _NET_WM_WINDOW_TYPE_NORMAL;
int wmstate_count;
Atom wmstate_atoms[3];
Uint32 fevent = 0;

#if SDL_VIDEO_DRIVER_X11_XINERAMA
/* FIXME
Expand Down Expand Up @@ -554,28 +555,19 @@ X11_CreateWindow(_THIS, SDL_Window * window)
}

#ifdef X_HAVE_UTF8_STRING
{
Uint32 fevent = 0;
if (SDL_X11_HAVE_UTF8) {
pXGetICValues(((SDL_WindowData *) window->driverdata)->ic,
XNFilterEvents, &fevent, NULL);
XSelectInput(display, w,
(FocusChangeMask | EnterWindowMask | LeaveWindowMask |
ExposureMask | ButtonPressMask | ButtonReleaseMask |
PointerMotionMask | KeyPressMask | KeyReleaseMask |
PropertyChangeMask | StructureNotifyMask |
KeymapStateMask | fevent));
}
#else
{
XSelectInput(display, w,
(FocusChangeMask | EnterWindowMask | LeaveWindowMask |
ExposureMask | ButtonPressMask | ButtonReleaseMask |
PointerMotionMask | KeyPressMask | KeyReleaseMask |
PropertyChangeMask | StructureNotifyMask |
KeymapStateMask));
}
#endif

XSelectInput(display, w,
(FocusChangeMask | EnterWindowMask | LeaveWindowMask |
ExposureMask | ButtonPressMask | ButtonReleaseMask |
PointerMotionMask | KeyPressMask | KeyReleaseMask |
PropertyChangeMask | StructureNotifyMask |
KeymapStateMask | fevent));

XFlush(display);

return 0;
Expand Down

0 comments on commit ee9413e

Please sign in to comment.