summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Reisner <dreisner@archlinux.org>2011-06-27 02:10:41 +0200
committerDave Reisner <dreisner@archlinux.org>2011-06-27 02:21:55 +0200
commitf09aff2cec29806356b800e1c13b711668b1fc26 (patch)
tree6d7c1c3f4768e9137de666357eb6dcf91954a430
parent8cc35dc1822efd83d38472b1cd3bc78fe889565d (diff)
downloadmkinitcpio-f09aff2cec29806356b800e1c13b711668b1fc26.tar.gz
mkinitcpio-f09aff2cec29806356b800e1c13b711668b1fc26.tar.xz
mkinitcpio: fix resolution issues with RTLD
The _add_dir call is all wrong. The necessary paths are created by reversing the order of the _add_symlink and _add_file calls, as _add_file will take care of creating parent directories. Thanks-to: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> Signed-off-by: Dave Reisner <dreisner@archlinux.org>
-rwxr-xr-xmkinitcpio5
1 files changed, 2 insertions, 3 deletions
diff --git a/mkinitcpio b/mkinitcpio
index 5389aca..459c828 100755
--- a/mkinitcpio
+++ b/mkinitcpio
@@ -306,9 +306,8 @@ if (( ${#LD_SO[*]} != 1 )); then # uh oh...
fi
resolved=$(readlink -e "$LD_SO")
-_add_dir "${resolved%/*}" 755
-_add_symlink "${LD_SO#$BASEDIR}" "${resolved#$BASEDIR}"
-_add_file "${resolved#$BASEDIR}" "${resolved#$BASEDIR}" 755
+_add_file "${resolved#$BASEDIR}" "$resolved" 755
+_add_symlink "${LD_SO#$BASEDIR}" "$resolved"
unset resolved
for hook in ${HOOKS}; do