X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=handlers%2Frdiff;h=88aeaf3fc7b130ac5ee5e437f7c001a58ef216f5;hb=c1c28e70326ebf75b37d0594df88adaf24045187;hp=6cbe6faf48ba8cc3a9a2687ede8931185a30af93;hpb=dc8e99c6c42a6f6bed025132aee37f4a742f6d0d;p=matthijs%2Fupstream%2Fbackupninja.git diff --git a/handlers/rdiff b/handlers/rdiff index 6cbe6fa..88aeaf3 100644 --- a/handlers/rdiff +++ b/handlers/rdiff @@ -112,6 +112,7 @@ else fi # check the connection at the source and destination +[ -n "$test" ] || test=0 if [ "$testconnect" = "yes" ] || [ "${test}" -eq 1 ]; then test_connection $sourceuser $sourcehost test_connection $destuser $desthost @@ -171,28 +172,42 @@ execstr="$RDIFFBACKUP $options --print-statistics " set -o noglob +symlinks_warning="Maybe you have mixed symlinks and '*' in this statement, which is not supported." + # TODO: order the includes and excludes # excludes for i in $exclude; do - i=`readlink -f $i` - str="${i//__star__/*}" - execstr="${execstr}--exclude '$str' " + str="${i//__star__/*}" + str=`readlink -f $str` + if [ -n "$str" ]; then + execstr="${execstr}--exclude '$str' " + else + warning "exclude statement '${i//__star__/*}' will be ignored. $symlinks_warning" + fi done # includes for i in $include; do - [ "$i" != "/" ] || fatal "Sorry, you cannot use 'include = /'" - i=`readlink -f $i` - str="${i//__star__/*}" - execstr="${execstr}--include '$str' " + [ "$i" != "/" ] || fatal "Sorry, you cannot use 'include = /'" + str="${i//__star__/*}" + str=`readlink -f $str` + if [ -n "$str" ]; then + execstr="${execstr}--include '$str' " + else + warning "include statement '${i//__star__/*}' will be ignored. $symlinks_warning" + fi done # vsinclude if [ $usevserver = yes ]; then for vserver in $vsnames; do for vi in $vsinclude; do - i=`readlink -f $VROOTDIR/$vserver$vi` - str="${i//__star__/*}" - execstr="${execstr}--include '$VROOTDIR/$vserver$str' " + str="${vi//__star__/*}" + str=`readlink -f $VROOTDIR/$vserver$str` + if [ -n "$str" ]; then + execstr="${execstr}--include '$str' " + else + warning "vsinclude statement '${vi//__star__/*}' will be ignored for VServer $vserver. $symlinks_warning" + fi done done fi