Merge pull request #3213 from orestisf1993/issue-2535

Fix memory leak when _XKB_RULES_NAMES can't be found
next
Ingo Bürk 2018-03-30 12:48:12 +02:00 committed by GitHub
commit 63133c878f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 2 additions and 5 deletions

View File

@ -958,10 +958,7 @@ bool load_keymap(void) {
.options = NULL};
if (fill_rmlvo_from_root(&names) == -1) {
ELOG("Could not get _XKB_RULES_NAMES atom from root window, falling back to defaults.\n");
if ((new_keymap = xkb_keymap_new_from_names(xkb_context, &names, 0)) == NULL) {
ELOG("xkb_keymap_new_from_names(NULL) failed\n");
return false;
}
/* Using NULL for the fields of xkb_rule_names. */
}
new_keymap = xkb_keymap_new_from_names(xkb_context, &names, 0);
free((char *)names.rules);
@ -970,7 +967,7 @@ bool load_keymap(void) {
free((char *)names.variant);
free((char *)names.options);
if (new_keymap == NULL) {
ELOG("xkb_keymap_new_from_names(RMLVO) failed\n");
ELOG("xkb_keymap_new_from_names failed\n");
return false;
}
}