summaryrefslogtreecommitdiffstats
path: root/video
diff options
context:
space:
mode:
Diffstat (limited to 'video')
-rw-r--r--video/out/x11_common.c23
1 files changed, 9 insertions, 14 deletions
diff --git a/video/out/x11_common.c b/video/out/x11_common.c
index a364b0c912..b5964ff531 100644
--- a/video/out/x11_common.c
+++ b/video/out/x11_common.c
@@ -479,15 +479,8 @@ int vo_x11_init(struct vo *vo)
}
x11->xim = XOpenIM(x11->display, NULL, NULL, NULL);
- if (!x11->xim) {
- MP_MSG(x11, vo->probing ? MSGL_V : MSGL_ERR,
- "couldn't find a valid X input method!\n");
-
- XCloseDisplay(x11->display);
- talloc_free(x11);
- vo->x11 = NULL;
- return 0;
- }
+ if (!x11->xim)
+ MP_WARN(x11, "XOpenIM() failed. Unicode input will not work.\n");
init_atoms(vo->x11);
@@ -1101,11 +1094,13 @@ static void vo_x11_create_window(struct vo *vo, XVisualInfo *vis, int x, int y,
x11->mouse_cursor_hidden = false;
vo_set_cursor_hidden(vo, true);
}
- x11->xic = XCreateIC(x11->xim,
- XNInputStyle, XIMPreeditNone | XIMStatusNone,
- XNClientWindow, x11->window,
- XNFocusWindow, x11->window,
- NULL);
+ if (x11->xim) {
+ x11->xic = XCreateIC(x11->xim,
+ XNInputStyle, XIMPreeditNone | XIMStatusNone,
+ XNClientWindow, x11->window,
+ XNFocusWindow, x11->window,
+ NULL);
+ }
vo_x11_set_wm_icon(x11);
vo_x11_update_window_title(vo);