The fix for #662636 breaks my rsnapshot config. Here's a minimal example
of the config:
=================================
config_version 1.2
cmd_rsync /usr/bin/rsync
sync_first 1
snapshot_root /tmp/rsnap/backup/
retain daily 7
verbose 3
backup /tmp/rsnap/src/ localhost/ +rsync_long_args=--filter="protect /tmp/rsnap/src/a/",exclude=/tmp/rsnap/src/a/
backup /tmp/rsnap/src/a/ localhost/ include="/tmp/rsnap/src/a/b/",exclude="/tmp/rsnap/src/a/*"
=================================
The intention of the config is to backup /tmp/rsnap/src/a/b/, but nothing else
in /tmp/rsnap/src/a/.
Since i upgraded to jessie, i now get the following error when running rsnapshot:
=================================
$ rsnapshot -c rsnapshot.conf sync
mkdir -m 0755 -p /tmp/rsnap/backup/.sync/
/usr/bin/rsync -a --delete --numeric-ids --relative --delete-excluded \
--exclude=/tmp/rsnap/src/a/ --filter="protect /tmp/rsnap/src/a/" \
/tmp/rsnap/src /tmp/rsnap/backup/.sync/localhost/
Unknown filter rule: `"protect /tmp/rsnap/src/a/"'
rsync error: syntax or usage error (code 1) at exclude.c(904) [client=3.1.1]
----------------------------------------------------------------------------
rsnapshot encountered an error! The program was invoked with these options:
/usr/bin/rsnapshot -c rsnapshot.conf sync
----------------------------------------------------------------------------
ERROR: /usr/bin/rsync returned 1 while processing /tmp/rsnap/src/
/usr/bin/rsync -a --delete --numeric-ids --relative --delete-excluded \
--include="/tmp/rsnap/src/a/b/" --exclude="/tmp/rsnap/src/a/*" \
/tmp/rsnap/src/a /tmp/rsnap/backup/.sync/localhost/
touch /tmp/rsnap/backup/.sync/
=================================
As you can see, rsync is unable to parse the filter `protect` rule any more. If
i remove debian/patches/10_space_destdir.diff, then it works as expected (and
has been working for some years with squeeze):
=================================
$ rsnapshot -c rsnapshot.conf sync
/usr/bin/rsync -a --delete --numeric-ids --relative --delete-excluded \
--exclude=/tmp/rsnap/src/a/ --filter="protect /tmp/rsnap/src/a/" \
/tmp/rsnap/src /tmp/rsnap/backup/.sync/localhost/
/usr/bin/rsync -a --delete --numeric-ids --relative --delete-excluded \
--include="/tmp/rsnap/src/a/b/" --exclude="/tmp/rsnap/src/a/*" \
/tmp/rsnap/src/a /tmp/rsnap/backup/.sync/localhost/
touch /tmp/rsnap/backup/.sync/
=================================