This is so ugly. People should learn English instead of using
antiquated text input methods ;)

Suckless is also about the input interface. If a typographic system
sucks, because it consists of thousands of letters, it has to be
fixed.

On Tue, 12 Feb 2019 at 10:12, <[email protected]> wrote:
>
> commit f5036b90efd9423d805923a0bc73cd54e30e72ab
> Author:     Hiltjo Posthuma <[email protected]>
> AuthorDate: Tue Feb 12 19:10:43 2019 +0100
> Commit:     Hiltjo Posthuma <[email protected]>
> CommitDate: Tue Feb 12 19:10:43 2019 +0100
>
>     fix crash when XOpenIM returns NULL
>
>     for example when IME variables are set, but the program is not started 
> (yet).
>
> diff --git a/dmenu.c b/dmenu.c
> index f803149..ae56f4f 100644
> --- a/dmenu.c
> +++ b/dmenu.c
> @@ -664,8 +664,17 @@ setup(void)
>                             CWOverrideRedirect | CWBackPixel | CWEventMask, 
> &swa);
>         XSetClassHint(dpy, win, &ch);
>
> -       /* open input methods */
> -       xim = XOpenIM(dpy, NULL, NULL, NULL);
> +
> +       /* input methods */
> +       if ((xim = XOpenIM(dpy, NULL, NULL, NULL)) == NULL) {
> +               XSetLocaleModifiers("@im=local");
> +               if ((xim = XOpenIM(dpy, NULL, NULL, NULL)) == NULL) {
> +                       XSetLocaleModifiers("@im=");
> +                       if ((xim = XOpenIM(dpy, NULL, NULL, NULL)) == NULL)
> +                               die("XOpenIM failed. Could not open input 
> device.\n");
> +               }
> +       }
> +
>         xic = XCreateIC(xim, XNInputStyle, XIMPreeditNothing | 
> XIMStatusNothing,
>                         XNClientWindow, win, XNFocusWindow, win, NULL);
>
>

Reply via email to