chiark / gitweb /
break out pool_dsc_subpath
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 25 Oct 2013 16:00:14 +0000 (17:00 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 25 Oct 2013 16:00:14 +0000 (17:00 +0100)
dgit

diff --git a/dgit b/dgit
index d74dd85b681c32357628472a12b7291f11995e4a..e5dbabba281d4d4a2d6e1a4acada688c69f766bb 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -585,6 +585,12 @@ sub archive_query ($) {
     { no strict qw(refs); &{"${method}_${proto}"}($proto,$data); }
 }
 
+sub pool_dsc_subpath ($$) {
+    my ($vsn,$component) = @_; # $package is implict arg
+    my $prefix = substr($package, 0, $package =~ m/^l/ ? 4 : 1);
+    return "/pool/$component/$prefix/$package/".dscfn($vsn);
+}
+
 sub archive_query_madison ($$) {
     my ($proto,$data) = @_;
     die unless $proto eq 'madison';
@@ -634,9 +640,7 @@ sub madison_parse ($) {
            $component = access_cfg('archive-query-default-component');
        }
        $5 eq 'source' or die "$rmad ?";
-       my $prefix = substr($package, 0, $package =~ m/^l/ ? 4 : 1);
-       my $subpath = "/pool/$component/$prefix/$package/".dscfn($vsn);
-       push @out, [$vsn,$subpath,$newsuite];
+       push @out, [$vsn,pool_dsc_subpath($vsn,$component),$newsuite];
     }
     return sort { -version_compare_string($a->[0],$b->[0]); } @out;
 }