From 8ff4e226af55a9feb168477a2b1a99f9c5152e54 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 4 Sep 2021 13:03:05 +0200 Subject: All pkgCaches are MultiArch caches Back in 2015 the code inside libapt who was using this field was dropped as even if we are on a system which is not configured for MultiArch, there are still edge cases in which the cache can include very foreign packages, so any assumption you could make thinking only a single architecture will be in the cache is probably wrong. Maintaining two different codepaths for Multi- and SingleArch is likely not very beneficial for code and users alike and is surprisingly hard to answer correctly and becoming even harder still, so always assuming the "worst case" seems like the far better option. References: 6c9937da76b9155d166092b9dda22d06200510c1 --- apt-pkg/pkgcache.cc | 5 +---- apt-pkg/pkgcache.h | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/apt-pkg/pkgcache.cc b/apt-pkg/pkgcache.cc index cbde7c42f..68efcaddc 100644 --- a/apt-pkg/pkgcache.cc +++ b/apt-pkg/pkgcache.cc @@ -127,10 +127,7 @@ bool pkgCache::Header::CheckSizes(Header &Against) const /* */ pkgCache::pkgCache(MMap *Map, bool DoMap) : Map(*Map), VS(nullptr), d(NULL) { - // call getArchitectures() with cached=false to ensure that the - // architectures cache is re-evaluated. this is needed in cases - // when the APT::Architecture field changes between two cache creations - MultiArchEnabled = APT::Configuration::getArchitectures(false).size() > 1; + MultiArchEnabled = true; if (DoMap == true) ReMap(); } diff --git a/apt-pkg/pkgcache.h b/apt-pkg/pkgcache.h index 55baa3cef..0e8046ddc 100644 --- a/apt-pkg/pkgcache.h +++ b/apt-pkg/pkgcache.h @@ -268,7 +268,7 @@ class APT_PUBLIC pkgCache /*{{{*/ inline RlsFileIterator RlsFileBegin(); inline RlsFileIterator RlsFileEnd(); - inline bool MultiArchCache() const { return MultiArchEnabled; } + APT_DEPRECATED_MSG("Always true") inline bool MultiArchCache() const { return MultiArchEnabled; } inline char const * NativeArch(); // Make me a function -- cgit v1.2.3-70-g09d2