[Aptitude-svn-commit] r4240 - in branches/aptitude-0.3/aptitude: . src/generic/problemresolver

Daniel Burrows dburrows at costa.debian.org
Sat Sep 24 17:17:55 UTC 2005


Author: dburrows
Date: Sat Sep 24 17:17:52 2005
New Revision: 4240

Modified:
   branches/aptitude-0.3/aptitude/ChangeLog
   branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h
Log:
Take the set of unresolved dependencies into account when screening out solutions of which a subset was already generated.

Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog	(original)
+++ branches/aptitude-0.3/aptitude/ChangeLog	Sat Sep 24 17:17:52 2005
@@ -1,5 +1,11 @@
 2005-09-24  Daniel Burrows  <dburrows at debian.org>
 
+	* src/generic/problemresolver/problemresolver.h:
+
+	  When screening out solutions that we've already generated a
+	  subset of, take into account the set of unresolved dependencies
+	  as well as the set of actions.
+
 	* src/generic/problemresolver/solution.h:
 
 	  If an action coincidentally fixes an unresolved dependency,

Modified: branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h
==============================================================================
--- branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h	(original)
+++ branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h	Sat Sep 24 17:17:52 2005
@@ -1460,7 +1460,9 @@
     for(typename std::vector<solution>::const_iterator i=generated_solutions.begin();
 	i!=generated_solutions.end(); ++i)
       if(std::includes(s.get_actions().begin(), s.get_actions().end(),
-		       i->get_actions().begin(), i->get_actions().end()))
+		       i->get_actions().begin(), i->get_actions().end()) &&
+	 std::includes(s.get_unresolved_soft_deps().begin(), s.get_unresolved_soft_deps().end(),
+		       i->get_unresolved_soft_deps().begin(), i->get_unresolved_soft_deps().end()))
 	return true;
 
     if(s.get_score() < minimum_score)



More information about the Aptitude-svn-commit mailing list