fix reload binding memory issue: copy current_binding_mode
This commit is contained in:
parent
90d7b9769c
commit
dfb3850989
@ -845,7 +845,7 @@ CommandResult *run_binding(Binding *bind, Con *con) {
|
|||||||
Binding *bind_cp = binding_copy(bind);
|
Binding *bind_cp = binding_copy(bind);
|
||||||
/* The "mode" command might change the current mode, so back it up to
|
/* The "mode" command might change the current mode, so back it up to
|
||||||
* correctly produce an event later. */
|
* correctly produce an event later. */
|
||||||
const char *modename = current_binding_mode;
|
char *modename = sstrdup(current_binding_mode);
|
||||||
|
|
||||||
CommandResult *result = parse_command(command, NULL, NULL);
|
CommandResult *result = parse_command(command, NULL, NULL);
|
||||||
free(command);
|
free(command);
|
||||||
@ -873,6 +873,7 @@ CommandResult *run_binding(Binding *bind, Con *con) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ipc_send_binding_event("run", bind_cp, modename);
|
ipc_send_binding_event("run", bind_cp, modename);
|
||||||
|
FREE(modename);
|
||||||
binding_free(bind_cp);
|
binding_free(bind_cp);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user