This fixes a problem where rsync won't work if the pkgver contains a
colon (epoch). In this case rsync assumes that the colon is a
remote:path separator and having src and dest both being remote
arguments is not supported.

Signed-off-by: Florian Pritz <[email protected]>
---
 commitpkg.in |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/commitpkg.in b/commitpkg.in
index bf3a5ab..fec41ff 100644
--- a/commitpkg.in
+++ b/commitpkg.in
@@ -168,6 +168,14 @@ for _arch in ${arch[@]}; do
 done
 archrelease "${commit_arches[@]/#/$repo-}" || die
 
+new_uploads=()
+
+for upload in ${uploads[@]}; do
+       new_uploads=("${new_uploads[@]}" "$(readlink -f "$upload")")
+done
+
+uploads=("${new_uploads[@]}")
+
 if [[ ${#uploads[*]} -gt 0 ]]; then
        msg 'Uploading all package and signature files'
        rsync "${rsyncopts[@]}" "${uploads[@]}" "$server:staging/$repo/" || die
-- 
1.7.8.4

Reply via email to