diff options
Diffstat (limited to 'udev_rules.c')
-rw-r--r-- | udev_rules.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/udev_rules.c b/udev_rules.c index c07abb9be0..9a0ee833e2 100644 --- a/udev_rules.c +++ b/udev_rules.c @@ -415,11 +415,13 @@ static int execute_program(struct udevice *udev, const char *path, char *value, dup2(fds[1], STDOUT_FILENO); retval = execv(arg, argv); - info(KEY_PROGRAM " execution of '%s' failed", path); - exit(1); + err(KEY_PROGRAM " execution of '%s' failed", path); + retval = -1; + break; case -1: err("fork of '%s' failed", path); - return -1; + retval = -1; + break; default: /* parent reads from fds[0] */ close(fds[1]); |