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

Daniel Burrows dburrows at costa.debian.org
Tue Sep 6 19:57:12 UTC 2005


Author: dburrows
Date: Tue Sep  6 19:57:09 2005
New Revision: 4057

Modified:
   branches/aptitude-0.3/aptitude/ChangeLog
   branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h
Log:
Don't silently discard solutions produced via forcing.

Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog	(original)
+++ branches/aptitude-0.3/aptitude/ChangeLog	Tue Sep  6 19:57:09 2005
@@ -1,5 +1,11 @@
 2005-09-06  Daniel Burrows  <dburrows at debian.org>
 
+	* src/generic/problemresolver/problemresolver.h:
+
+	  When a solution is encountered immediately after forcing a
+	  dependency, actually produce it instead of silently discarding
+	  it.
+
 	* src/generic/solution.h:
 
 	  Yes, I need to check that it compiles before I commit it.

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	Tue Sep  6 19:57:09 2005
@@ -1792,6 +1792,15 @@
 	  }
       }
 
+    // In the course of forcing dependencies, we might have actually
+    // arrived at a solution, in which case we should just enqueue it
+    // and stop (a full solution has no successors to generate).
+    if(curr.is_full_solution())
+      {
+	try_enqueue(curr);
+	return;
+      }
+
     unsigned int nsols = 0;
 
     // First try to enqueue stuff related to a dependency that the



More information about the Aptitude-svn-commit mailing list