From 6f20b17624a1fb9c6e4d6fd1ba4efaf463209065 Mon Sep 17 00:00:00 2001 From: Dieter Plaetinck Date: Sat, 28 Feb 2009 18:02:11 +0100 Subject: check_is_in fixes.. and this time i mean it.. i think. hopefully. + test script for check_is_in --- src/core/libs/lib-blockdevices-filesystems.sh | 6 +++--- src/core/libs/lib-misc.sh | 10 ++++++---- 2 files changed, 9 insertions(+), 7 deletions(-) (limited to 'src/core/libs') diff --git a/src/core/libs/lib-blockdevices-filesystems.sh b/src/core/libs/lib-blockdevices-filesystems.sh index 1307d52..4979c1f 100644 --- a/src/core/libs/lib-blockdevices-filesystems.sh +++ b/src/core/libs/lib-blockdevices-filesystems.sh @@ -395,7 +395,7 @@ process_filesystems () fs_id="$part $fs_type $fs_mountpoint $fs_opts $fs_label $fs_params" if [ "$fs_create" = yes ] then - if check_is_in "${done_filesystems[@]}" "$fs_id" + if check_is_in "$fs_id" "${done_filesystems[@]}" then debug 'FS' "$fs_id ->Already done" else @@ -472,7 +472,7 @@ rollback_filesystems () elif [ "$fs_mountpoint" != no_mountpoint ] then part_real=${part/+/} - if ! check_is_in "${done_umounts[@]}" "$part_real" + if ! check_is_in "$part_real" "${done_umounts[@]}" then infofy "(Maybe) Umounting $part_real" disks if mount | grep -q "^$part_real " # could be that this was not mounted yet. no problem, we can just skip it then. @@ -744,7 +744,7 @@ get_blockdevice_size () [ -b "$1" ] || die_error "get_blockdevice_size needs a blockdevice as \$1 ($1 given)" unit=${2:-B} allowed_units=(B KiB kB MiB MB GiB GB) - if ! check_is_in "${allowed_units[@]}" $unit + if ! check_is_in $unit "${allowed_units[@]}" then die_error "Unrecognized unit $unit!" fi diff --git a/src/core/libs/lib-misc.sh b/src/core/libs/lib-misc.sh index 97252b9..6f7af95 100644 --- a/src/core/libs/lib-misc.sh +++ b/src/core/libs/lib-misc.sh @@ -46,18 +46,20 @@ wait_for () } -# $1 set (array) haystack -# $2 needle +# $1 needle +# $2 set (array) haystack check_is_in () { - [ -z "$1" ] && debug 'MISC' "check_is_in $1 $2" && die_error "check_is_in needs a non-empty needle as \$2 and a haystack as \$1!" # haystack can be empty though + [ -z "$1" ] && debug 'MISC' "check_is_in $1 $2" && die_error "check_is_in needs a non-empty needle as \$1 and a haystack as \$2!" # haystack can be empty though local pattern="$1" element shift for element do - [[ $element = $pattern ]] && return 0 + [[ $element = $pattern ]] && debug 'MISC' "Checking if $element = $pattern ..yes !" && return 0 + debug 'MISC' "Checking if $element = $pattern ... no" done + debug 'MISC' "Check_is_in could not find $1 in $2" return 1 } -- cgit v1.2.3-54-g00ecf