sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit fdc262d4029966f78d3598c0fd78361cc9a498d4
parent da8f24de1d3d5843142be1164919ca6a49155ae9
Author: Brian Ashworth <bosrsf04@gmail.com>
Date:   Wed,  9 Jan 2019 01:50:40 -0500

cmd_bind: pass the seat to execute_command

`seat_execute_command` was incorrectly setting
`config->handler_context.seat` before calling `execute_command`. Since
`execute_command` was being called with a `NULL` seat argument,
`execute_command` was setting `config->handler_context.seat` to the
default seat. This resulted in all bindings being executed on the
default seat and causing undesired behavior for devices on other seats.

Diffstat:
Msway/commands/bind.c | 3+--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/sway/commands/bind.c b/sway/commands/bind.c @@ -312,8 +312,7 @@ struct cmd_results *cmd_bindcode(int argc, char **argv) { void seat_execute_command(struct sway_seat *seat, struct sway_binding *binding) { wlr_log(WLR_DEBUG, "running command for binding: %s", binding->command); - config->handler_context.seat = seat; - list_t *res_list = execute_command(binding->command, NULL, NULL); + list_t *res_list = execute_command(binding->command, seat, NULL); bool success = true; for (int i = 0; i < res_list->length; ++i) { struct cmd_results *results = res_list->items[i];