Re: Aptitude oddity
On Sat, Aug 09, 2008 at 10:56:22AM -0700, Daniel Burrows <dburrows@debian.org> was heard to say:
> No, it'll spew large amounts of debugging information to your
> terminal which you can then paste into a mail to me. :-)
Aha. The aptitude resolver isn't touching those packages at all, but
think maybe I see what *is* happening. The code that I wrote to use the
apt resolver as a fallback option is accidentally resetting every hold
state in the database. Does this patch help?
Daniel
diff -r aabbcab08cd3 src/cmdline/cmdline_upgrade.cc
--- a/src/cmdline/cmdline_upgrade.cc Sat Aug 09 09:58:13 2008 -0700
+++ b/src/cmdline/cmdline_upgrade.cc Sat Aug 09 16:41:07 2008 -0700
@@ -112,7 +112,10 @@
// Reset all the package states.
for(pkgCache::PkgIterator i=(*apt_cache_file)->PkgBegin();
!i.end(); ++i)
- (*apt_cache_file)->mark_keep(i, false, false, NULL);
+ {
+ bool held = (*apt_cache_file)->get_ext_state(i).selection_state == pkgCache::State::Hold;
+ (*apt_cache_file)->mark_keep(i, false, held, NULL);
+ }
}
// Use the apt 'upgrade' algorithm as a fallback against, e.g.,
Reply to: