diff options
author | David Kalnischkies <david@kalnischkies.de> | 2015-10-30 16:34:25 +0100 |
---|---|---|
committer | David Kalnischkies <david@kalnischkies.de> | 2015-11-04 18:04:05 +0100 |
commit | 294a80209a0c6ea617a14fb2ae650d4fd329eab5 (patch) | |
tree | 6430408a0b5ceaae3bb862fb144c265adb116b46 /apt-pkg/edsp/edsplistparser.cc | |
parent | 51818f26c784bb574dafc545e8ae320845e5e8fc (diff) |
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
Diffstat (limited to 'apt-pkg/edsp/edsplistparser.cc')
-rw-r--r-- | apt-pkg/edsp/edsplistparser.cc | 9 |
1 files changed, 9 insertions, 0 deletions
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) { |