summaryrefslogtreecommitdiff
path: root/apt-private/private-show.cc
diff options
context:
space:
mode:
Diffstat (limited to 'apt-private/private-show.cc')
-rw-r--r--apt-private/private-show.cc14
1 files changed, 10 insertions, 4 deletions
diff --git a/apt-private/private-show.cc b/apt-private/private-show.cc
index 792c455a8..cd7a2a064 100644
--- a/apt-private/private-show.cc
+++ b/apt-private/private-show.cc
@@ -258,6 +258,8 @@ bool ShowPackage(CommandLine &CmdL) /*{{{*/
CacheSetHelperVirtuals helper(true, GlobalError::NOTICE);
APT::CacheSetHelper::VerSelector const select = _config->FindB("APT::Cache::AllVersions", true) ?
APT::CacheSetHelper::ALL : APT::CacheSetHelper::CANDIDATE;
+ if (select == APT::CacheSetHelper::CANDIDATE && CacheFile.GetDepCache() == nullptr)
+ return false;
APT::VersionList const verset = APT::VersionList::FromCommandLine(CacheFile, CmdL.FileList + 1, select, helper);
int const ShowVersion = _config->FindI("APT::Cache::Show::Version", 1);
for (APT::VersionList::const_iterator Ver = verset.begin(); Ver != verset.end(); ++Ver)
@@ -356,10 +358,14 @@ bool ShowSrcPackage(CommandLine &CmdL) /*{{{*/
bool Policy(CommandLine &CmdL)
{
pkgCacheFile CacheFile;
- pkgCache *Cache = CacheFile.GetPkgCache();
- pkgPolicy *Plcy = CacheFile.GetPolicy();
- pkgSourceList *SrcList = CacheFile.GetSourceList();
- if (unlikely(Cache == NULL || Plcy == NULL || SrcList == NULL))
+ pkgSourceList const * const SrcList = CacheFile.GetSourceList();
+ if (unlikely(SrcList == nullptr))
+ return false;
+ pkgCache * const Cache = CacheFile.GetPkgCache();
+ if (unlikely(Cache == nullptr))
+ return false;
+ pkgPolicy * const Plcy = CacheFile.GetPolicy();
+ if (unlikely(Plcy == nullptr))
return false;
bool OldPolicy = _config->FindI("APT::Policy", 1) < 1;