forked from enlightenment/enlightenment
e_xkb_layout_get can return NULL so trap for that and only set the
names.layout below if needed. Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
parent
da2f217f76
commit
b82cb14698
|
@ -839,10 +839,11 @@ _e_comp_wl_input_keymap_get(void)
|
||||||
|
|
||||||
memset(&names, 0, sizeof(names));
|
memset(&names, 0, sizeof(names));
|
||||||
|
|
||||||
kbd_layout = e_xkb_layout_get();
|
if ((kbd_layout = e_xkb_layout_get()))
|
||||||
|
{
|
||||||
names.model = strdup(kbd_layout->model);
|
names.model = strdup(kbd_layout->model);
|
||||||
names.layout = strdup(kbd_layout->name);
|
names.layout = strdup(kbd_layout->name);
|
||||||
|
}
|
||||||
|
|
||||||
/* if we are running under X11, try to get the xkb rule names atom */
|
/* if we are running under X11, try to get the xkb rule names atom */
|
||||||
if (getenv("DISPLAY"))
|
if (getenv("DISPLAY"))
|
||||||
|
@ -870,10 +871,11 @@ _e_comp_wl_input_keymap_get(void)
|
||||||
{
|
{
|
||||||
names.rules = strdup((const char *)data);
|
names.rules = strdup((const char *)data);
|
||||||
data += strlen((const char *)data) + 1;
|
data += strlen((const char *)data) + 1;
|
||||||
/* names.model = strdup((const char *)data); */
|
if (!names.model)
|
||||||
/* data += strlen((const char *)data) + 1; */
|
names.model = strdup((const char *)data);
|
||||||
/* names.layout = strdup((const char *)data); */
|
data += strlen((const char *)data) + 1;
|
||||||
// free(data);
|
if (!names.layout)
|
||||||
|
names.layout = strdup((const char *)data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue