summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt-private/private-output.cc5
-rw-r--r--apt-private/private-update.cc2
2 files changed, 4 insertions, 3 deletions
diff --git a/apt-private/private-output.cc b/apt-private/private-output.cc
index 158bd5c71..7f8922138 100644
--- a/apt-private/private-output.cc
+++ b/apt-private/private-output.cc
@@ -118,7 +118,7 @@ static std::string GetFlagsStr(pkgCacheFile &CacheFile, pkgCache::PkgIterator P)
std::string flags_str;
if (state.NowBroken())
flags_str = "B";
- if (P.CurrentVer() && state.Upgradable())
+ if (P.CurrentVer() && state.Upgradable() && state.CandidateVer != NULL)
flags_str = "g";
else if (P.CurrentVer() != NULL)
flags_str = "i";
@@ -229,7 +229,8 @@ void ListSingleVersion(pkgCacheFile &CacheFile, pkgRecords &records, /*{{{*/
std::string CandidateVerStr = GetCandidateVersion(CacheFile, P);
std::string InstalledVerStr = GetInstalledVersion(CacheFile, P);
std::string StatusStr;
- if(P.CurrentVer() == V && state.Upgradable()) {
+ if(P.CurrentVer() == V && state.Upgradable() && state.CandidateVer != NULL)
+ {
strprintf(StatusStr, _("[installed,upgradable to: %s]"),
CandidateVerStr.c_str());
} else if (P.CurrentVer() == V) {
diff --git a/apt-private/private-update.cc b/apt-private/private-update.cc
index 0f2f7a8da..860d84b86 100644
--- a/apt-private/private-update.cc
+++ b/apt-private/private-update.cc
@@ -83,7 +83,7 @@ bool DoUpdate(CommandLine &CmdL)
for (pkgCache::PkgIterator I = Cache->PkgBegin(); I.end() != true; ++I)
{
pkgDepCache::StateCache &state = Cache[I];
- if (I->CurrentVer != 0 && state.Upgradable())
+ if (I->CurrentVer != 0 && state.Upgradable() && state.CandidateVer != NULL)
upgradable++;
}
const char *msg = P_(