summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt-pkg/deb/deblistparser.cc2
-rw-r--r--apt-pkg/pkgcache.cc2
-rwxr-xr-xtest/integration/test-apt-get-source20
3 files changed, 22 insertions, 2 deletions
diff --git a/apt-pkg/deb/deblistparser.cc b/apt-pkg/deb/deblistparser.cc
index 090673db2..63343005b 100644
--- a/apt-pkg/deb/deblistparser.cc
+++ b/apt-pkg/deb/deblistparser.cc
@@ -154,7 +154,6 @@ bool debListParser::NewVersion(pkgCache::VerIterator &Ver)
if (Space != NULL)
{
- Stop = Space;
const char * const Open = (const char * const) memchr(Space, '(', Stop - Space);
if (likely(Open != NULL))
{
@@ -169,6 +168,7 @@ bool debListParser::NewVersion(pkgCache::VerIterator &Ver)
}
}
}
+ Stop = Space;
}
std::string const pkgname(Start, Stop - Start);
diff --git a/apt-pkg/pkgcache.cc b/apt-pkg/pkgcache.cc
index d6dd169bb..c9c338e1e 100644
--- a/apt-pkg/pkgcache.cc
+++ b/apt-pkg/pkgcache.cc
@@ -59,7 +59,7 @@ pkgCache::Header::Header()
/* Whenever the structures change the major version should be bumped,
whenever the generator changes the minor version should be bumped. */
APT_HEADER_SET(MajorVersion, 10);
- APT_HEADER_SET(MinorVersion, 4);
+ APT_HEADER_SET(MinorVersion, 5);
APT_HEADER_SET(Dirty, false);
APT_HEADER_SET(HeaderSz, sizeof(pkgCache::Header));
diff --git a/test/integration/test-apt-get-source b/test/integration/test-apt-get-source
index 27395ab3b..10a190b6c 100755
--- a/test/integration/test-apt-get-source
+++ b/test/integration/test-apt-get-source
@@ -15,6 +15,12 @@ insertpackage 'wheezy' 'unreleated-package' 'all' '1.0'
insertpackage 'unstable' 'foo' 'all' '2.0'
insertsource 'unstable' 'foo' 'all' '2.0'
+# binary packages with Source-field
+insertpackage 'unstable' 'bin' 'i386' '3-2+b1' 'Source: bin (3-2)'
+insertsource 'unstable' 'bin' 'any' '3-2'
+insertpackage 'stable' 'bin' 'i386' '2-2+b1' 'Source: bin-backport (2-2)'
+insertsource 'stable' 'bin-backport' 'any' '2-2'
+
# its possible to have multiple src versions in the sources file, ensure
# to pick the correct one in this case (bts #731853)
insertsource 'stable' 'foo' 'all' '1.5'
@@ -37,6 +43,7 @@ insertsource 'unstable' 'baz' 'all' '1.5'
# ensure we really have the situation we wanted (first 2.0 is foo above)
testequal 'Version: 2.0
+Version: 3-2
Version: 2.0
Version: 1.5' grep '^Version:' aptarchive/dists/unstable/main/source/Sources
@@ -137,3 +144,16 @@ git clone git://anonscm.debian.org/bar/bar.git -b debian/experimental
to retrieve the latest (possibly unreleased) updates to the package.
Need to get 0 B/25 B of source archives.
Fetch source bar" aptget source bar -s
+
+testsuccessequal "$HEADER
+Need to get 0 B/25 B of source archives.
+Fetch source bin" aptget source bin -s -q
+testsuccessequal "$HEADER
+Selected version '3-2' (unstable) for bin
+Need to get 0 B/25 B of source archives.
+Fetch source bin" aptget source bin/unstable -s -q
+testsuccessequal "$HEADER
+Picking 'bin-backport' as source package instead of 'bin'
+Selected version '2-2' (stable) for bin-backport
+Need to get 0 B/43 B of source archives.
+Fetch source bin-backport" aptget source bin/stable -s -q