diff --git a/ChangeLog b/ChangeLog
index cf7fc3708cd583e9c0e3275f612af3f87525b8af..ac97127b4512a4c7b23add3146fc2a6b2800058d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -23,7 +23,7 @@ version 0.9.3 -- unreleased
          . code formatting cleanup (three spaces indent)
          . fixed bug which caused only first include/exclude dir to
            have "include = "
-         . fixed globbing bug with exclude
+         . fixed globbing bug with include and exclude (twice ;)
         ninjahelper:
          . now reports error if the helper script has a syntax error or bombs out.
          . code formatting cleanup (three spaces indent)
diff --git a/handlers/rdiff b/handlers/rdiff
index e2ab5e8ac9dabfedd3fea44951a2f99977423d58..1a2e1ebb37eaacfea7b5c88d4e0de3b74d6b0b0b 100644
--- a/handlers/rdiff
+++ b/handlers/rdiff
@@ -94,7 +94,7 @@ check_consistency "destination" "$type" "$user" "$host"
 
 # See if vservers are configured
 local usevserver=no
-if [ $vservers_are_available = yes ]; then
+if [ $vservers_are_available = yes -a -n "$vsinclude" ]; then
    info "vserver method enabled"
    usevserver=yes
 fi
@@ -160,12 +160,12 @@ execstr="$RDIFFBACKUP $options --print-statistics "
 
 # TODO: order the includes and excludes
 # excludes
-for i in $exclude; do
+for i in "$exclude"; do
 	str="${i//__star__/*}"
 	execstr="${execstr}--exclude '$str' "
 done
 # includes 
-for i in $include; do
+for i in "$include"; do
 	[ "$i" != "/" ] || fatal "Sorry, you cannot use 'include = /'"
 	str="${i//__star__/*}"
 	execstr="${execstr}--include '$str' "
@@ -174,7 +174,7 @@ done
 # vsinclude
 if [ $usevserver = yes ]; then
 	for vserver in `ls $VROOTDIR|grep -v lost+found`; do
-		for vi in $vsinclude; do
+		for vi in "$vsinclude"; do
 			str="${vi//__star__/*}"
 			execstr="${execstr}--include '$VROOTDIR/$vserver$str' "
 		done