From 21ea10ad95f9f00a5347e4d6457d15478f9875fc Mon Sep 17 00:00:00 2001 From: Ryan Schmidt Date: Mon, 16 Nov 2009 00:32:27 +0000 Subject: [PATCH] Use peg revision instead of operative revision for svn checkouts; fixes https://trac.macports.org/ticket/20777. git-svn-id: https://svn.macports.org/repository/macports/trunk/base@60573 d073be05-634f-4543-b044-5fe20cf6d1d6 --- ChangeLog | 4 ++++ src/port1.0/portfetch.tcl | 8 ++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index ef603de95..6de85588a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,10 @@ Release 1.9.0 (unreleased): + - svn checkouts now use peg revisions instead of operative revisions, + so they'll continue to work if a repository gets reorganized + (#20777, ryandesign) + - Use CommonCrypto/CommonDigest instead of OpenSSL libcrypto. (toby) - Add SHA256 checksums in addition to MD5, SHA1 and RIPEMD160. (afb) diff --git a/src/port1.0/portfetch.tcl b/src/port1.0/portfetch.tcl index 566a3500c..3f2052661 100644 --- a/src/port1.0/portfetch.tcl +++ b/src/port1.0/portfetch.tcl @@ -533,11 +533,15 @@ proc portfetch::cvsfetch {args} { # Perform an svn fetch proc portfetch::svnfetch {args} { - global svn.args svn.revision svn.method + global svn.args svn.method svn.revision svn.url + + if {[regexp {\s} ${svn.url}]} { + return -code error [msgcat::mc "Subversion URL cannot contain whitespace"] + } set svn.args "${svn.method} ${svn.args}" if {[string length ${svn.revision}]} { - set svn.args "${svn.args} -r ${svn.revision}" + append svn.url "@${svn.revision}" } if {[catch {command_exec svn "" "2>&1"} result]} {