X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=functions.sh;h=d1a1e7cc9040ef33fdf9af7eee35c45ed7899fbb;hb=b0b75f0bad57bdababacdd7781ae3f2133f6dfb8;hp=75014f0f6694afeacd64d5c44586360921b83e5d;hpb=84585bc441d81f0e9d0b1cc514d88a97efe8a56f;p=carnet-tools-cn.git diff --git a/functions.sh b/functions.sh index 75014f0..d1a1e7c 100644 --- a/functions.sh +++ b/functions.sh @@ -182,6 +182,7 @@ cp_backup_conffile() { } # by jelly, Tue, 15 Mar 2005 14:04:21 +0100 +# modified by ico, Mon, 6 Jun 2005 11:58:08 +0200 # A sed wrapper, to use instead of perl -pi -e # - relatively safe in-place s///g # - takes care of symlinks and ownership @@ -190,6 +191,10 @@ cp_backup_conffile() { cp_check_and_sed() { [ "$CP_SCRIPT_DEBUG" ] && set -vx local s sedcmd grepret ret i + if [ -z "$3" ]; then + echo "Usage: cp_check_and_sed [file ...]" 2>&1 + return 1 + fi s="$1" shift sedcmd="$1" @@ -204,6 +209,11 @@ cp_check_and_sed() { fi [ -h "$i" ] && i=$(readlink -f "$i") sed "$sedcmd" "$i" > "$i.dpkg-tmp" + if [ ! "$?" = "0" ]; then + rm "$i.dpkg-tmp" + echo "cp_check_and_sed: Problem with sed" 1>&2 + return 5 + fi if ! cmp -s "$i" "$i.dpkg-tmp" 2>&1 >/dev/null; then cp_mv "$i.dpkg-tmp" "$i" else @@ -211,7 +221,7 @@ cp_check_and_sed() { fi ret=0 done - [ "$ret" -eq 2 -a "$grepret"] && ret=1 || true + [ "$ret" -eq 2 -a "$grepret" ] && ret=1 || true return $ret } @@ -276,6 +286,7 @@ cp_mv () { fi mv "$new" "$old" } + # by ddzeko, Mon, 21 Mar 2005 13:35:42 +0100 cp_yes_no () { [ "$CP_SCRIPT_DEBUG" ] && set -vx @@ -393,3 +404,4 @@ cp_get_ldap_realm() { [ -z "$echo_return" ] || echo $RET CP_ECHO_RETURN="$echo_return" } +