diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2022-05-26 20:56:12 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2022-05-26 21:46:58 +0200 |
commit | 5aa285b437d14c809649beaa2b47341b0de4a67d (patch) | |
tree | 21be0ee09ff7fb91b5a5426dab90c142b7bd9989 /src/kernel-install/kernel-install.in | |
parent | 97e7d4945dbf8140b89a92212bcfb8c80c01dd47 (diff) | |
download | systemd-5aa285b437d14c809649beaa2b47341b0de4a67d.tar.gz |
kernel-install: if a plugin fails, return error immediately
Since the first version in 81516adcb71a47837544340f72eb8ee810274119,
kernel-install would "gather" a return value by summing the exit codes
of the plugins… This makes no sense, because those are not additive values.
Let's just break off immediately. We now implement cleanup via trap, so if we
break, we should leave no garbage behind.
Diffstat (limited to 'src/kernel-install/kernel-install.in')
-rwxr-xr-x | src/kernel-install/kernel-install.in | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/kernel-install/kernel-install.in b/src/kernel-install/kernel-install.in index 5f88ac2490..9296bfcd8e 100755 --- a/src/kernel-install/kernel-install.in +++ b/src/kernel-install/kernel-install.in @@ -336,7 +336,7 @@ case "$COMMAND" in err=$? [ $err -eq $skip_remaining ] && break - ret=$(( ret + err )) + [ $err -ne 0 ] && exit $err done ;; @@ -346,7 +346,7 @@ case "$COMMAND" in "$f" remove "$KERNEL_VERSION" "$ENTRY_DIR_ABS" err=$? [ $err -eq $skip_remaining ] && break - ret=$(( ret + err )) + [ $err -ne 0 ] && exit $err done if [ "$MAKE_ENTRY_DIR_ABS" -eq 0 ]; then |