diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c index ee87d7c65c..63a967633b 100644 --- a/src/udev/udev-rules.c +++ b/src/udev/udev-rules.c @@ -2442,6 +2442,11 @@ int udev_rules_apply_to_event( case TK_A_RUN_BUILTIN: case TK_A_RUN_PROGRAM: { _cleanup_free_ char *cmd = NULL; + + if (event->run_final) + break; + if (cur->key.op == OP_ASSIGN_FINAL) + event->run_final = true; if (IN_SET(cur->key.op, OP_ASSIGN, OP_ASSIGN_FINAL)) ordered_hashmap_clear_free_key(event->run_list);