Avoid a server-side problem with -e is at the start of the short options.
authorWayne Davison <wayned@samba.org>
Thu, 8 Jan 2009 00:38:56 +0000 (16:38 -0800)
committerWayne Davison <wayned@samba.org>
Thu, 8 Jan 2009 00:39:22 +0000 (16:39 -0800)
(Bug #6020)

support/rrsync

index 6599975..0369bc6 100644 (file)
@@ -143,7 +143,8 @@ while ($command =~ /((?:[^\s\\]+|\\.[^\s\\]*)+)/g) {
     if ($_ eq '.') {
       $in_options = 0;
     } else {
     if ($_ eq '.') {
       $in_options = 0;
     } else {
-      next if /^-$short_no_arg+(e\d*\.\w*)?$/o || /^-$short_with_num\d+$/o;
+      die "$0: invalid option: '-'\n" if $_ eq '-';
+      next if /^-$short_no_arg*(e\d*\.\w*)?$/o || /^-$short_with_num\d+$/o;
 
       my($opt,$arg) = /^--([^=]+)(?:=(.*))?$/;
       my $disabled;
 
       my($opt,$arg) = /^--([^=]+)(?:=(.*))?$/;
       my $disabled;