From: Julian Andres Klode Date: Thu, 10 Dec 2015 08:48:21 +0000 (+0100) Subject: Do not swap required and important in pkgCache::Priority() X-Git-Tag: 1.1.5~29 X-Git-Url: https://git.saurik.com/apt.git/commitdiff_plain/2fcd25a9e26093b8d1228107b5b0019675984114 Do not swap required and important in pkgCache::Priority() required and important were swapped, leading to wrong output. Closes: #807523 Thanks: Manuel A. Fernandez Montecelo for discovering this --- diff --git a/apt-pkg/orderlist.cc b/apt-pkg/orderlist.cc index a61c2b06a..bfdc50e6c 100644 --- a/apt-pkg/orderlist.cc +++ b/apt-pkg/orderlist.cc @@ -328,7 +328,7 @@ int pkgOrderList::Score(PkgIterator Pkg) break; } - // Important Required Standard Optional Extra + // Required Important Standard Optional Extra if (Cache[Pkg].InstVerIter(Cache)->Priority <= 5) { signed short PrioMap[] = {0,5,4,3,1,0}; diff --git a/apt-pkg/pkgcache.cc b/apt-pkg/pkgcache.cc index 0750a2080..2196da03c 100644 --- a/apt-pkg/pkgcache.cc +++ b/apt-pkg/pkgcache.cc @@ -309,7 +309,7 @@ const char *pkgCache::DepType(unsigned char Type) /* */ const char *pkgCache::Priority(unsigned char Prio) { - const char *Mapping[] = {0,_("important"),_("required"),_("standard"), + const char *Mapping[] = {0,_("required"),_("important"),_("standard"), _("optional"),_("extra")}; if (Prio < _count(Mapping)) return Mapping[Prio]; diff --git a/test/libapt/priority_test.cc b/test/libapt/priority_test.cc new file mode 100644 index 000000000..ef1941ce5 --- /dev/null +++ b/test/libapt/priority_test.cc @@ -0,0 +1,16 @@ +#include +#include +#include +#include + +using std::string; + +// Tests for Bug#807523 +TEST(PriorityTest, PriorityPrinting) +{ + EXPECT_EQ("required", string(pkgCache::Priority(pkgCache::State::Required))); + EXPECT_EQ("important", string(pkgCache::Priority(pkgCache::State::Important))); + EXPECT_EQ("standard", string(pkgCache::Priority(pkgCache::State::Standard))); + EXPECT_EQ("optional", string(pkgCache::Priority(pkgCache::State::Optional))); + EXPECT_EQ("extra", string(pkgCache::Priority(pkgCache::State::Extra))); +}