]> git.saurik.com Git - apt.git/commitdiff
if Resolver fails, do not continue even if not broken
authorDavid Kalnischkies <david@kalnischkies.de>
Fri, 30 May 2014 11:42:36 +0000 (13:42 +0200)
committerDavid Kalnischkies <david@kalnischkies.de>
Fri, 30 May 2014 11:42:36 +0000 (13:42 +0200)
This can happen if the request is already a well-formed request all by
itself (e.g. the package has no dependencies), but the resolver found
a reason to not accept it as solution. Our edsp 'dump' solver e.g.
shouldn't be able to trigger install, which it does otherwise.

apt-private/private-install.cc

index 107ed398e30f6a9dbe7a639d636fa5b9b927a967..f15ccc398e83cb4541997fbdcab7a0c454115008 100644 (file)
@@ -617,7 +617,8 @@ bool DoCacheManipulationFromCommandLine(CommandLine &CmdL, CacheFile &Cache,
       if (Fix != NULL)
       {
         // Call the scored problem resolver
-        Fix->Resolve(true);
+        if (Fix->Resolve(true) == false && Cache->BrokenCount() == 0)
+           return false;
       }
 
       // Now we check the state of the packages,