Skip to content

Commit

Permalink
Fix pass through binding logic.
Browse files Browse the repository at this point in the history
Ensure that '--' gets processed correctly in defining a window specific
binding (it was being ignored and treated as an unbind action).
  • Loading branch information
somiaj authored and ThomasAdam committed Jul 7, 2021
1 parent 5a4f6c2 commit 954b689
Showing 1 changed file with 15 additions and 17 deletions.
32 changes: 15 additions & 17 deletions fvwm/bindings.c
Original file line number Diff line number Diff line change
Expand Up @@ -392,34 +392,32 @@ static int ParseBinding(
if (action != NULL)
{
action = SkipSpaces(action, NULL, 0);
if (action != NULL)
is_pass_through = is_pass_through_action(action);
}
if (
action == NULL || *action == 0 ||
(action[0] == '-' && !is_pass_through))
{
is_unbind_request = True;
}
else
else if (is_pass_through)
{
is_pass_through = is_pass_through_action(action);
if (is_pass_through)
/* pass-through actions indicate that the event be
* allowed to pass through to the underlying window. */
if (window_name == NULL)
{
/* pass-through actions indicate that the event be
* allowed to pass through to the underlying window. */
if (window_name == NULL)
/* It doesn't make sense to have a pass-through
* action on global bindings. */
if (!is_silent)
{
/* It doesn't make sense to have a pass-through
* action on global bindings. */
if (!is_silent)
{
fvwm_debug(
__func__,
"Invalid action for global "
"binding: %s", tline);
}

return 0;
fvwm_debug(
__func__,
"Invalid action for global "
"binding: %s", tline);
}

return 0;
}
}

Expand Down

0 comments on commit 954b689

Please sign in to comment.