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

Daniel Burrows dburrows at costa.debian.org
Sun Aug 21 04:21:43 UTC 2005


Author: dburrows
Date: Sun Aug 21 04:21:39 2005
New Revision: 3940

Modified:
   branches/aptitude-0.3/aptitude/ChangeLog
   branches/aptitude-0.3/aptitude/src/generic/aptitude_resolver_universe.cc
   branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h
Log:
Fix how Conflicts (the dependency relation) show up on the
abstract side of things.

Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog	(original)
+++ branches/aptitude-0.3/aptitude/ChangeLog	Sun Aug 21 04:21:39 2005
@@ -1,5 +1,12 @@
 2005-08-20  Daniel Burrows  <dburrows at debian.org>
 
+	* src/generic/aptitude_resolver_universe.cc:
+
+	  Fix the projection of conflicts-through-provides into the
+	  abstract universe: the gateway test should check that the
+	  current version provides the *target* of the Conflict, not the
+	  *source*.
+
 	* src/generic/problemresolver/problemresolver.h:
 
 	  Fix a silly error: of course when populating a partial conflict

Modified: branches/aptitude-0.3/aptitude/src/generic/aptitude_resolver_universe.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/generic/aptitude_resolver_universe.cc	(original)
+++ branches/aptitude-0.3/aptitude/src/generic/aptitude_resolver_universe.cc	Sun Aug 21 04:21:39 2005
@@ -210,7 +210,7 @@
 	      // the conflict?
 	      for(pkgCache::PrvIterator prv2=ver_lst.ProvidesList();
 		  !ver_matches && !prv2.end(); ++prv2)
-		if(prv2.ParentPkg()==dep_lst.ParentPkg())
+		if(prv2.ParentPkg()==dep_lst.TargetPkg())
 		  ver_matches=(!dep_lst.TargetVer()) ||
 		    (prv2.ProvideVersion() &&
 		     _system->VS->CheckDep(prv2.ProvideVersion(),

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	Sun Aug 21 04:21:39 2005
@@ -1833,6 +1833,9 @@
 	      continue;
 	    }
 
+	if(debug)
+	  std::cout << "sol_ver is " << sol_ver.get_package().get_name() << " " << sol_ver.get_name() << std::endl;
+
 	// Since we assume the dep is broken, this shouldn't happen!
 	assert(sol_ver != sol_ver.get_package().current_version());
 



More information about the Aptitude-svn-commit mailing list