diff options
author | Julian Andres Klode <jak@debian.org> | 2015-12-10 09:48:21 +0100 |
---|---|---|
committer | Julian Andres Klode <jak@debian.org> | 2015-12-10 10:02:21 +0100 |
commit | 2fcd25a9e26093b8d1228107b5b0019675984114 (patch) | |
tree | d5033e8cea28e8461d9f7ce522cb5764f08a2979 | |
parent | b3c63712e4e54e3743c302416528423def4eefbb (diff) |
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
-rw-r--r-- | apt-pkg/orderlist.cc | 2 | ||||
-rw-r--r-- | apt-pkg/pkgcache.cc | 2 | ||||
-rw-r--r-- | test/libapt/priority_test.cc | 16 |
3 files changed, 18 insertions, 2 deletions
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 <config.h> +#include <apt-pkg/pkgcache.h> +#include <string> +#include <gtest/gtest.h> + +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))); +} |