summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmdline/apt-get.cc10
-rw-r--r--debian/changelog5
2 files changed, 12 insertions, 3 deletions
diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc
index a22d881b6..55681d59e 100644
--- a/cmdline/apt-get.cc
+++ b/cmdline/apt-get.cc
@@ -1194,8 +1194,16 @@ pkgSrcRecords::Parser *FindSrc(const char *Name,pkgRecords &Recs,
{
VerTag = string(TmpSrc.begin() + Slash + 1,TmpSrc.end());
TmpSrc = string(TmpSrc.begin(),TmpSrc.begin() + Slash);
+ } else if(_config->Find("APT::Default-Release") != "") {
+ // if we have a Default-Release (-t) we want a exact match
+ // FIXME: we won't support downgrades
+ // (i.e. -t stable won't work on a unstable system
+ pkgCache::PkgIterator Pkg = Cache.FindPkg(TmpSrc);
+ if(Pkg.end() == false) {
+ pkgCache::VerIterator Ver = Cache.GetCandidateVer(Pkg);
+ VerTag = Ver.VerStr();
+ }
}
-
/* Lookup the version of the package we would install if we were to
install a version and determine the source package name, then look
in the archive for a source package of the same name. In theory
diff --git a/debian/changelog b/debian/changelog
index 28152fa0a..4ed84ab36 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -10,12 +10,13 @@ apt (0.6.41.1) unstable; urgency=low
- patch-100: Completed Danish translation (Closes: #325686)
- patch-104: French translation completed
- patch-109: Italian translation completed
- - patch-112: Swedish translation update
- - patch-115: Basque translation completed
+ - patch-112: Swedish translation update
+ - patch-115: Basque translation completed (Closes: #333299)
* applied french man-page update (thanks to Philippe Batailler)
(closes: #316318, #327456)
* fix leak in the mmap code, thanks to Daniel Burrows for the
patch (closes: #250583)
+ * partial support for apt-get source -t (no "downgrades" currently)
--