On Fri, Oct 07, 2005 at 04:14:59PM +0200, Tom Parker <[EMAIL PROTECTED]> was 
heard to say:
> Daniel Burrows wrote:
> >The attached patch should fix this problem.
> 
> Ah. Have noticed problem. Patch fixes the original issue, causes a new one. 
> With
> the patch applied, and my ~/.aptitude/config containing the line
> 
> aptitude::UI::Default-Grouping 
> "filter(missing),task,status,section(subdir,passthrough),section(topdir)";
> 
> I get multiple copies of every package entry. This appears to be because 
> I've got multiple different repositories listed 
> (stable/testing/unstable/experimental/various ubuntu), plus
> fun and games with apt-pinning to keep it all from going mad. I've got one 
> copy of a package listed for every repository that it's in. See attached 
> screenshot for an example.

  I think that in a strict technical sense this bug was there all along,
it's just that the filter string wasn't being parsed correctly so you
couldn't see it :).  Anyway, this patch should close it up.

  Thanks for all the tesing!

  Daniel
Fri Oct  7 09:13:18 PDT 2005  Daniel Burrows <[EMAIL PROTECTED]>
  * Don't duplicate package entries in the filter policy.
diff -rN -u old-head/src/pkg_grouppolicy.cc new-head/src/pkg_grouppolicy.cc
--- old-head/src/pkg_grouppolicy.cc     2005-10-07 09:14:26.442587248 -0700
+++ new-head/src/pkg_grouppolicy.cc     2005-10-07 09:11:37.000000000 -0700
@@ -418,7 +418,10 @@
   {
     for(pkgCache::VerIterator ver = pkg.VersionList(); !ver.end(); ++ver)
       if(filter->matches(pkg, ver))
-       chain->add_package(pkg, root);
+       {
+         chain->add_package(pkg, root);
+         break;
+       }
   }
 
   virtual ~pkg_grouppolicy_filter() {delete chain;}

Attachment: signature.asc
Description: Digital signature

Reply via email to