From: Silvio Rhatto Date: Sat, 24 Dec 2011 13:35:06 +0000 (-0200) Subject: Mangle rsync_options just after all other options were evaluated (#3702) X-Git-Url: https://gitweb.fluxo.info/?a=commitdiff_plain;h=926152dfa1c3b076488bf768ae6cd2282cfa5497;p=backupninja.git Mangle rsync_options just after all other options were evaluated (#3702) --- diff --git a/ChangeLog b/ChangeLog index e1ac76d..fa319b8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,7 @@ version 1.0 -- UNRELEASED handler changes rysnc: . Fix numericids option (Redmine#3691). + . Mangle $rsync_options just afterwards (Redmine#3702). dup: . Make the .dup generated by ninjahelper more consistent with example.dup. diff --git a/handlers/rsync.in b/handlers/rsync.in index 45b9b31..a17afbd 100644 --- a/handlers/rsync.in +++ b/handlers/rsync.in @@ -893,7 +893,7 @@ function set_rsync_options { if [ "$from" == "local" ] || [ "$dest" == "local" ]; then # rsync options for local sources or destinations - rsync_options=($rsync_options) + true fi if [ "$from" == "remote" ] || [ "$dest" == "remote" ]; then @@ -912,8 +912,6 @@ function set_rsync_options { remote_rsync="$remote_rsync --fake-super" fi - rsync_options=($rsync_options --rsync-path="$remote_rsync") - if [ "$protocol" == "ssh" ]; then if [ ! -e "$id_file" ]; then fatal "SSH Identity file $id_file not found" @@ -927,6 +925,14 @@ function set_rsync_options { fi + # Mangle rsync_options so we can use quotes after all other + # options were evaluated. + if [ "$from" == "local" ] && [ "$dest" == "local" ]; then + rsync_options=($rsync_options) + else + rsync_options=($rsync_options --rsync-path="$remote_rsync") + fi + include_vservers }