fix some leaks; update lock.sh
This commit is contained in:
parent
1ecd26e59c
commit
ef9d84128f
10
i3lock.c
10
i3lock.c
|
@ -216,11 +216,15 @@ char* get_keylayoutname(int mode) {
|
|||
|
||||
if (XkbGetNames(display, XkbGroupNamesMask, keyboard) != Success ) {
|
||||
DEBUG("Error obtaining symbolic names");
|
||||
XCloseDisplay(display);
|
||||
XkbFreeClientMap(keyboard, 0, true);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if(XkbGetState(display, XkbUseCoreKbd, &state) != Success) {
|
||||
DEBUG("Error getting keyboard state");
|
||||
XCloseDisplay(display);
|
||||
XkbFreeClientMap(keyboard, 0, true);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -258,10 +262,12 @@ char* get_keylayoutname(int mode) {
|
|||
default:
|
||||
break;
|
||||
}
|
||||
// note: this is called in option parsing, so this debug() may not trigger unless --debug is the first option
|
||||
DEBUG("answer after mode parsing: [%s]\n", answer);
|
||||
// Free symbolic names structures
|
||||
XkbFreeNames(keyboard, XkbGroupNamesMask, True);
|
||||
// note: this is called in option parsing, so this debug() may not trigger unless --debug is the first option
|
||||
XkbFreeClientMap(keyboard, 0, true);
|
||||
XCloseDisplay(display);
|
||||
display = NULL;
|
||||
return answer;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue