aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2017-09-03 22:52:41 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2017-09-03 22:52:41 -0700
commit3a005bbaea41cf1e87e6a256bbf9e53cd26584a9 (patch)
tree731244878be0a96a84c081a7bc92bdda565728fb
parentgen_initramfs: catch lddtree failure. (diff)
downloadgenkernel-3a005bbaea41cf1e87e6a256bbf9e53cd26584a9.tar.gz
genkernel-3a005bbaea41cf1e87e6a256bbf9e53cd26584a9.tar.bz2
genkernel-3a005bbaea41cf1e87e6a256bbf9e53cd26584a9.zip
initrd.scripts: fix cdupdate.sh path check
This has been broken since the v3.4.52 release, more than 2 years ago. Looks like cdupdate.sh gets very little use. Fixes: https://bugs.gentoo.org/show_bug.cgi?id=593866 Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
-rw-r--r--defaults/initrd.scripts10
1 files changed, 7 insertions, 3 deletions
diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts
index efc6421..ee9aeb5 100644
--- a/defaults/initrd.scripts
+++ b/defaults/initrd.scripts
@@ -1410,10 +1410,14 @@ verbose_kmsg() {
cdupdate() {
if [ "${CDROOT}" = '1' ]
then
- if [ -x /${CDROOT_PATH}/cdupdate.sh ]
+ cdupdate_path=''
+ for p in /${NEW_ROOT}/${CDROOT_PATH}/ /${CDROOT_PATH}/ ; do
+ [ -x "${p}/cdupdate.sh" ] && cdupdate_path="${p}/cdupdate.sh" && break
+ done
+ if [ -n "${cdupdate_path}" ]
then
- good_msg "Running cdupdate.sh"
- ${CDROOT_PATH}/cdupdate.sh
+ good_msg "Running cdupdate.sh ($cdupdate_path)"
+ ${cdupdate_path}
if [ "$?" != '0' ]
then
bad_msg "Executing cdupdate.sh failed!"