summaryrefslogtreecommitdiff
path: root/apt-pkg/depcache.cc
diff options
context:
space:
mode:
authorMichael Vogt <mvo@debian.org>2010-11-10 19:39:12 +0100
committerMichael Vogt <mvo@debian.org>2010-11-10 19:39:12 +0100
commit88b62c5b3d55fa2ac0c4e0f4f0a595c60101db59 (patch)
tree8ca43482d477b2a437d368e4ab1fa1c6ff6aaad8 /apt-pkg/depcache.cc
parentc1c49795f4ba33e56b5b741f07bba362f4d54c2e (diff)
parentedbda33bdef6a480fcfcb5d6b9a219c10cbeaaba (diff)
merged from donkult
Diffstat (limited to 'apt-pkg/depcache.cc')
-rw-r--r--apt-pkg/depcache.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc
index 0b5d6d8e6..23abc76c1 100644
--- a/apt-pkg/depcache.cc
+++ b/apt-pkg/depcache.cc
@@ -1444,8 +1444,11 @@ void pkgDepCache::MarkInstall(PkgIterator const &Pkg,bool AutoInst,
VerIterator Ver(*this,*I);
PkgIterator Pkg = Ver.ParentPkg();
-
-
+ /* The List includes all packages providing this dependency,
+ even providers which are not installed, so skip them. */
+ if (PkgState[Pkg->ID].InstallVer == 0)
+ continue;
+
if (PkgState[Pkg->ID].CandidateVer != *I &&
Start->Type == Dep::DpkgBreaks)
MarkInstall(Pkg,true,Depth + 1, false, ForceImportantDeps);