From f584fe7437b5cee53327218402be684d738b39cc Mon Sep 17 00:00:00 2001 From: Benjamin Drung Date: Wed, 1 Apr 2026 16:20:51 +0200 Subject: [PATCH] refactor(dracut-functions): use array in _detect_library_directories Use an array for `libdirs` to fix the shellcheck complaint. --- dracut-functions.sh | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dracut-functions.sh b/dracut-functions.sh index 8d4785dda..d617acd8d 100755 --- a/dracut-functions.sh +++ b/dracut-functions.sh @@ -1509,23 +1509,23 @@ determine_kernel_image() { } _detect_library_directories() { - local libdirs="" + local -a libdirs=() + local line if [[ $($DRACUT_INSTALL ${dracutsysrootdir:+-r "$dracutsysrootdir"} --dry-run -R "$DRACUT_TESTBIN") == */lib64/* ]] &> /dev/null \ && [[ -d "${dracutsysrootdir-}/lib64" ]]; then - libdirs+=" /lib64" - [[ -d "${dracutsysrootdir-}/usr/lib64" ]] && libdirs+=" /usr/lib64" + libdirs+=("/lib64") + [[ -d "${dracutsysrootdir-}/usr/lib64" ]] && libdirs+=("/usr/lib64") fi if [[ -d "${dracutsysrootdir-}/lib" ]]; then - libdirs+=" /lib" - [[ -d "${dracutsysrootdir-}/usr/lib" ]] && libdirs+=" /usr/lib" + libdirs+=("/lib") + [[ -d "${dracutsysrootdir-}/usr/lib" ]] && libdirs+=("/usr/lib") fi - # shellcheck disable=SC2046 # word splitting is wanted, libraries must not contain spaces - libdirs+="$(printf ' %s' $(ldconfig_paths))" + while IFS='' read -r line; do libdirs+=("$line"); done < <(ldconfig_paths) - echo "${libdirs# }" + echo "${libdirs[@]}" } if ! _is_func dinfo > /dev/null 2>&1; then -- 2.47.3