Hi, Here are some valgrind logs of aptitude running with GLIBCXX_FORCE_NEW=1 set.
------------------------------------------------------------
Invalid read of size 8
at 0x42C59A: pkgCache::VerIterator::end() const (cacheiterators.h:107)
by 0x4CF8B5: pkg_description_widget::set_package(pkgCache::PkgIterator
const&, pkgCache::VerIterator const&) (pkg_view.cc:237)
by 0x4D03FF: info_area_multiplex::set_package(pkgCache::PkgIterator const&,
pkgCache::VerIterator const&) (pkg_view.cc:379)
by 0x4D0710: info_area_multiplex::reset_package() (pkg_view.cc:440)
by 0x4C9DA4: sigc::bound_mem_functor0<void,
info_area_multiplex>::operator()() const (mem_fun.h:1787)
by 0x4C9DC0: sigc::adaptor_functor<sigc::bound_mem_functor0<void,
info_area_multiplex> >::operator()() const (adaptor_trait.h:251)
by 0x4C9DE4: sigc::internal::slot_call0<sigc::bound_mem_functor0<void,
info_area_multiplex>, void>::call_it(sigc::internal::slot_rep*) (slot.h:103)
by 0x4271C0: sigc::internal::signal_emit0<void,
sigc::nil>::emit(sigc::internal::signal_impl*) (signal.h:544)
by 0x42727C: sigc::signal0<void, sigc::nil>::emit() const (signal.h:1702)
by 0x510348: sigc::bound_const_mem_functor0<void, sigc::signal0<void,
sigc::nil> >::operator()() const (mem_fun.h:2339)
by 0x510364: sigc::adaptor_functor<sigc::bound_const_mem_functor0<void,
sigc::signal0<void, sigc::nil> > >::operator()() const (adaptor_trait.h:251)
by 0x510388: sigc::internal::slot_call0<sigc::bound_const_mem_functor0<void,
sigc::signal0<void, sigc::nil> >, void>::call_it(sigc::internal::slot_rep*)
(slot.h:103)
Address 0x684D250 is not stack'd, malloc'd or (recently) free'd
Invalid read of size 8
at 0x48EB5E: pkgCache::VerIterator::FileList() const (cacheiterators.h:432)
by 0x4CF8CC: pkg_description_widget::set_package(pkgCache::PkgIterator
const&, pkgCache::VerIterator const&) (pkg_view.cc:239)
by 0x4D03FF: info_area_multiplex::set_package(pkgCache::PkgIterator const&,
pkgCache::VerIterator const&) (pkg_view.cc:379)
by 0x4D0710: info_area_multiplex::reset_package() (pkg_view.cc:440)
by 0x4C9DA4: sigc::bound_mem_functor0<void,
info_area_multiplex>::operator()() const (mem_fun.h:1787)
by 0x4C9DC0: sigc::adaptor_functor<sigc::bound_mem_functor0<void,
info_area_multiplex> >::operator()() const (adaptor_trait.h:251)
by 0x4C9DE4: sigc::internal::slot_call0<sigc::bound_mem_functor0<void,
info_area_multiplex>, void>::call_it(sigc::internal::slot_rep*) (slot.h:103)
by 0x4271C0: sigc::internal::signal_emit0<void,
sigc::nil>::emit(sigc::internal::signal_impl*) (signal.h:544)
by 0x42727C: sigc::signal0<void, sigc::nil>::emit() const (signal.h:1702)
by 0x510348: sigc::bound_const_mem_functor0<void, sigc::signal0<void,
sigc::nil> >::operator()() const (mem_fun.h:2339)
by 0x510364: sigc::adaptor_functor<sigc::bound_const_mem_functor0<void,
sigc::signal0<void, sigc::nil> > >::operator()() const (adaptor_trait.h:251)
by 0x510388: sigc::internal::slot_call0<sigc::bound_const_mem_functor0<void,
sigc::signal0<void, sigc::nil> >, void>::call_it(sigc::internal::slot_rep*)
(slot.h:103)
Address 0x684D238 is 0 bytes after a block of size 32 alloc'd
at 0x4C22425: operator new(unsigned long) (vg_replace_malloc.c:167)
by 0x404BF2E: sigc::internal::trackable_callback_list::add_callback(void*,
void* (*)(void*)) (in /usr/lib/libsigc-2.0.so.0.0.0)
by 0x42B3CA: sigc::internal::slot_do_bind::operator()(sigc::trackable
const*) const (slot_base.h:148)
by 0x42B3EA: sigc::internal::with_type_pointer<true, sigc::trackable,
sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind> >::execute_(sigc::trackable const&,
sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind> const&) (visit_each.h:88)
by 0x42B40A: void sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind>::operator()<sigc::trackable>(sigc::trackable
const&) const (visit_each.h:100)
by 0x42B42A: void
sigc::visit_each<sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind>,
sigc::trackable>(sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind> const&, sigc::trackable const&) (visit_each.h:144)
by 0x4998B8: void
sigc::visit_each<sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind>, pkg_item,
true>(sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind> const&, sigc::limit_reference<pkg_item, true>
const&) (limit_reference.h:121)
by 0x4998DC: void
sigc::visit_each<sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind>, void, pkg_item,
bool>(sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind> const&, sigc::bound_mem_functor1<void, pkg_item,
bool> const&) (mem_fun.h:1870)
by 0x499900: void
sigc::visit_each<sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind>, sigc::bound_mem_functor1<void, pkg_item, bool>
>(sigc::internal::limit_derived_target<sigc::trackable*,
sigc::internal::slot_do_bind> const&,
sigc::adaptor_functor<sigc::bound_mem_functor1<void, pkg_item, bool> > const&)
(adaptor_trait.h:267)
by 0x49992D: void sigc::visit_each_type<sigc::trackable*,
sigc::internal::slot_do_bind,
sigc::adaptor_functor<sigc::bound_mem_functor1<void, pkg_item, bool> >
>(sigc::internal::slot_do_bind const&,
sigc::adaptor_functor<sigc::bound_mem_functor1<void, pkg_item, bool> > const&)
(visit_each.h:170)
by 0x499ABE: sigc::internal::typed_slot_rep<sigc::bound_mem_functor1<void,
pkg_item, bool>
>::typed_slot_rep(sigc::internal::typed_slot_rep<sigc::bound_mem_functor1<void,
pkg_item, bool> > const&) (slot.h:43)
by 0x499B15: sigc::internal::typed_slot_rep<sigc::bound_mem_functor1<void,
pkg_item, bool> >::dup(void*) (slot.h:77)
------------------------------------------------------------
Seems pretty reproducible to me now. I may catch it in gdb some other
day.
Sami
signature.asc
Description: Digital signature

