diff options
-rw-r--r-- | apt-pkg/deb/deblistparser.cc | 2 | ||||
-rw-r--r-- | apt-pkg/pkgcache.cc | 2 | ||||
-rwxr-xr-x | test/integration/test-apt-get-source | 20 |
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 |