From 294a80209a0c6ea617a14fb2ae650d4fd329eab5 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Fri, 30 Oct 2015 16:34:25 +0100 Subject: sanify API to get 'the' candidate version This was discussed a while ago on #debian-apt and now that I see myself making this mistake lets bite the bullet and fix it in the easy way out version: Using a new name which fits with a similar named setter and deprecate the old method instead of 'hostily' changing API. Closes: #803471 --- apt-pkg/edsp/edsplistparser.cc | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'apt-pkg/edsp') diff --git a/apt-pkg/edsp/edsplistparser.cc b/apt-pkg/edsp/edsplistparser.cc index 5c90cf1fc..77a0edc22 100644 --- a/apt-pkg/edsp/edsplistparser.cc +++ b/apt-pkg/edsp/edsplistparser.cc @@ -111,6 +111,15 @@ bool edspListParser::ParseStatus(pkgCache::PkgIterator &Pkg, return false; } + // FIXME: Using an overriding pin is wrong. + if (Section.FindB("APT-Candidate", false)) + { + std::string out; + strprintf(out, "Package: %s\nPin: version %s\nPin-Priority: 9999\n\n", Pkg.FullName().c_str(), Ver.VerStr()); + if (d->preferences.Write(out.c_str(), out.length()) == false) + return false; + } + signed short const pinvalue = Section.FindI("APT-Pin", 500); if (pinvalue != 500) { -- cgit v1.2.3