X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/3184b4cf2e8e2009ce62b8f66c666ae7da67e378..af7a92c35accda98b667ff41f62ea500fca95a7c:/apt-pkg/deb/deblistparser.cc diff --git a/apt-pkg/deb/deblistparser.cc b/apt-pkg/deb/deblistparser.cc index 2cfeb23e9..1b3bfd6ae 100644 --- a/apt-pkg/deb/deblistparser.cc +++ b/apt-pkg/deb/deblistparser.cc @@ -481,6 +481,7 @@ const char *debListParser::ConvertRelation(const char *I,unsigned int &Op) */ static string CompleteArch(std::string& arch) { if (arch == "armel") return "linux-arm"; + if (arch == "armhf") return "linux-arm"; if (arch == "lpia") return "linux-i386"; if (arch == "powerpcspe") return "linux-powerpc"; if (arch == "uclibc-linux-armel") return "linux-arm"; @@ -757,7 +758,7 @@ bool debListParser::Step() if (Architecture.empty() == true) return true; - if (Arch.empty() == true || MultiArchEnabled == false) + if (Arch.empty() == true || Arch == "any" || MultiArchEnabled == false) { if (APT::Configuration::checkArchitecture(Architecture) == true) return true; @@ -815,6 +816,12 @@ bool debListParser::LoadReleaseInfo(pkgCache::PkgFileIterator &FileI, if (Section.FindFlag("NotAutomatic",FileI->Flags, pkgCache::Flag::NotAutomatic) == false) _error->Warning("Bad NotAutomatic flag"); + if (Section.FindFlag("ButAutomaticUpgrades",FileI->Flags, + pkgCache::Flag::ButAutomaticUpgrades) == false) + _error->Warning("Bad ButAutomaticUpgrades flag"); + // overrule the NotAutomatic setting if needed as they are both present for compatibility + else if ((FileI->Flags & pkgCache::Flag::ButAutomaticUpgrades) == pkgCache::Flag::ButAutomaticUpgrades) + FileI->Flags &= ~pkgCache::Flag::NotAutomatic; return !_error->PendingError(); }