summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt-pkg/algorithms.cc8
-rw-r--r--cmdline/apt-cache.cc4
2 files changed, 7 insertions, 5 deletions
diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc
index 322c667f2..2dd9aaaf1 100644
--- a/apt-pkg/algorithms.cc
+++ b/apt-pkg/algorithms.cc
@@ -1,6 +1,6 @@
// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
-// $Id: algorithms.cc,v 1.36 2001/05/27 03:46:10 jgg Exp $
+// $Id: algorithms.cc,v 1.37 2001/12/26 06:47:37 jgg Exp $
/* ######################################################################
Algorithms - A set of misc algorithms
@@ -225,7 +225,8 @@ bool pkgApplyStatus(pkgDepCache &Cache)
else
{
// Is this right? Will dpkg choke on an upgrade?
- if (Cache[I].CandidateVerIter(Cache).Downloadable() == true)
+ if (Cache[I].CandidateVer != 0 &&
+ Cache[I].CandidateVerIter(Cache).Downloadable() == true)
Cache.MarkInstall(I);
else
return _error->Error(_("The package %s needs to be reinstalled, "
@@ -246,7 +247,8 @@ bool pkgApplyStatus(pkgDepCache &Cache)
Cache.MarkKeep(I);
else
{
- if (Cache[I].CandidateVerIter(Cache).Downloadable() == true)
+ if (Cache[I].CandidateVer != 0 &&
+ Cache[I].CandidateVerIter(Cache).Downloadable() == true)
Cache.MarkInstall(I);
else
Cache.MarkDelete(I);
diff --git a/cmdline/apt-cache.cc b/cmdline/apt-cache.cc
index 691899b3e..426bfc5b9 100644
--- a/cmdline/apt-cache.cc
+++ b/cmdline/apt-cache.cc
@@ -1,6 +1,6 @@
// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
-// $Id: apt-cache.cc,v 1.53 2001/12/07 05:57:43 jgg Exp $
+// $Id: apt-cache.cc,v 1.54 2001/12/26 06:47:58 jgg Exp $
/* ######################################################################
apt-cache - Manages the cache files
@@ -1362,7 +1362,7 @@ int main(int argc,const char *argv[])
if (CmdL.DispatchArg(CmdsA,false) == false && _error->PendingError() == false)
{
- MMap *Map;
+ MMap *Map = 0;
if (_config->FindB("APT::Cache::Generate",true) == false)
{
Map = new MMap(*new FileFd(_config->FindFile("Dir::Cache::pkgcache"),