diff options
Diffstat (limited to 'video/out/x11_common.c')
-rw-r--r-- | video/out/x11_common.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/video/out/x11_common.c b/video/out/x11_common.c index 8c6ddae3ea..a364b0c912 100644 --- a/video/out/x11_common.c +++ b/video/out/x11_common.c @@ -463,7 +463,7 @@ int vo_x11_init(struct vo *vo) x11->display = XOpenDisplay(dispName); if (!x11->display) { MP_MSG(x11, vo->probing ? MSGL_V : MSGL_ERR, - "vo: couldn't open the X11 display (%s)!\n", dispName); + "couldn't open the X11 display (%s)!\n", dispName); talloc_free(x11); vo->x11 = NULL; @@ -479,6 +479,15 @@ 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; + } init_atoms(vo->x11); |