- Always return a candidate if there is at least one version pinned > 0
(Closes: #512318)
signed Max = GetPriority(Pkg);
pkgCache::VerIterator Pref = GetMatch(Pkg);
signed Max = GetPriority(Pkg);
pkgCache::VerIterator Pref = GetMatch(Pkg);
+ // Alternatives in case we can not find our package pin (Bug#512318).
+ signed MaxAlt = 0;
+ pkgCache::VerIterator PrefAlt;
+
// no package = no candidate version
if (Pkg.end() == true)
return Pref;
// no package = no candidate version
if (Pkg.end() == true)
return Pref;
{
Pref = Ver;
Max = Prio;
{
Pref = Ver;
Max = Prio;
+ }
+ if (Prio > MaxAlt)
+ {
+ PrefAlt = Ver;
+ MaxAlt = Prio;
+ // If we do not find our candidate, use the one with the highest pin.
+ // This means that if there is a version available with pin > 0; there
+ // will always be a candidate (Closes: #512318)
+ if (!Pref.IsGood() && MaxAlt > 0)
+ Pref = PrefAlt;
- Use the new python-apt API (and conflict with python-apt << 0.7.93.2).
* apt-inst/contrib/arfile.h:
- Add public ARArchive::Members() which returns the list of members.
- Use the new python-apt API (and conflict with python-apt << 0.7.93.2).
* apt-inst/contrib/arfile.h:
- Add public ARArchive::Members() which returns the list of members.
+ * apt-pkg/policy.cc:
+ - Always return a candidate if there is at least one version pinned > 0
+ (Closes: #512318)
* debian/rules:
- Fix the libraries name to be e.g. libapt-pkg4.9 instead of
libapt-pkg-4.9.
* debian/rules:
- Fix the libraries name to be e.g. libapt-pkg4.9 instead of
libapt-pkg-4.9.