pan-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pan-users] pan 0.139 crash with large groups


From: wim delvaux
Subject: [Pan-users] pan 0.139 crash with large groups
Date: Sat, 01 Sep 2012 02:04:06 +0200
User-agent: KMail/4.8.4 (Linux/3.3.5-030305-generic; KDE/4.8.4; x86_64; ; )

Hi all,

for some reason pan crashes when I want to open a group containing lots of 
messages.

I ran 0.139 in gdb to see if I could collect a stack dump but when the crash 
occurs, there is no stack to be inspected.  I compiled the 139 release using 
CLAGS and CXXFLAGS=-g but it does not seem to be enough.

I also ran it through valgrind but it takes to damn long ... however I noticed 
lots of overruns (accessing bytes outside of the allocated memory)

at the end you can find one such an example

Help !

W



==4639== Invalid read of size 8
==4639==    at 0x70C3120: wcslen (wcslen.S:127)
==4639==    by 0x70CC3FE: wcsxfrm_l (strxfrm_l.c:107)
==4639==    by 0x61057BE: g_utf8_collate_key (in /lib/x86_64-linux-
gnu/libglib-2.0.so.0.3200.3)
==4639==    by 0x60191D: pan::HeaderPane::Row::do_collate(pan::StringView 
const&) (header-pane.h:221)
==4639==    by 0x6019A2: pan::HeaderPane::Row::get_collated_subject() const 
(header-pane.h:231)
==4639==    by 0x5F7E09: pan::HeaderPane::column_compare_func(_GtkTreeModel*, 
_GtkTreeIter*, _GtkTreeIter*, void*) (header-pane.cc:439)
==4639==    by 0x6145AA: PanTreeStore::RowCompareByColumn::operator()
(PanTreeStore::Row const*, PanTreeStore::Row const*) const (pan-tree.cc:856)
==4639==    by 0x61AC8D: __gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > > 
std::__unguarded_partition<__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::Row*, 
PanTreeStore::RowCompareByColumn>(__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::Row* const&, PanTreeStore::RowCompareByColumn) (stl_algo.h:2233)
==4639==    by 0x618FCD: __gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > > 
std::__unguarded_partition_pivot<__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::RowCompareByColumn>(__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::RowCompareByColumn) (stl_algo.h:2265)
==4639==    by 0x617012: void 
std::__introsort_loop<__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, long, 
PanTreeStore::RowCompareByColumn>(__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, long, 
PanTreeStore::RowCompareByColumn) (stl_algo.h:2306)
==4639==    by 0x615458: void 
std::sort<__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::RowCompareByColumn>(__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::RowCompareByColumn) (stl_algo.h:5445)
==4639==    by 0x6123C9: PanTreeStore::insert_sorted(PanTreeStore::Row*, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > const&) 
(pan-tree.cc:916)
==4639==  Address 0x7e618608 is 0 bytes after a block of size 280 alloc'd
==4639==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-
amd64-linux.so)
==4639==    by 0x60E1A78: g_malloc (in /lib/x86_64-linux-
gnu/libglib-2.0.so.0.3200.3)
==4639==    by 0x6106381: ??? (in /lib/x86_64-linux-
gnu/libglib-2.0.so.0.3200.3)
==4639==    by 0x610578A: g_utf8_collate_key (in /lib/x86_64-linux-
gnu/libglib-2.0.so.0.3200.3)
==4639==    by 0x60191D: pan::HeaderPane::Row::do_collate(pan::StringView 
const&) (header-pane.h:221)
==4639==    by 0x6019A2: pan::HeaderPane::Row::get_collated_subject() const 
(header-pane.h:231)
==4639==    by 0x5F7E09: pan::HeaderPane::column_compare_func(_GtkTreeModel*, 
_GtkTreeIter*, _GtkTreeIter*, void*) (header-pane.cc:439)
==4639==    by 0x6145AA: PanTreeStore::RowCompareByColumn::operator()
(PanTreeStore::Row const*, PanTreeStore::Row const*) const (pan-tree.cc:856)
==4639==    by 0x61AC8D: __gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > > 
std::__unguarded_partition<__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::Row*, 
PanTreeStore::RowCompareByColumn>(__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::Row* const&, PanTreeStore::RowCompareByColumn) (stl_algo.h:2233)
==4639==    by 0x618FCD: __gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > > 
std::__unguarded_partition_pivot<__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::RowCompareByColumn>(__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::RowCompareByColumn) (stl_algo.h:2265)
==4639==    by 0x617012: void 
std::__introsort_loop<__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, long, 
PanTreeStore::RowCompareByColumn>(__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, long, 
PanTreeStore::RowCompareByColumn) (stl_algo.h:2306)
==4639==    by 0x615458: void 
std::sort<__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::RowCompareByColumn>(__gnu_cxx::__normal_iterator<PanTreeStore::Row**,
 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
__gnu_cxx::__normal_iterator<PanTreeStore::Row**, 
std::vector<PanTreeStore::Row*, std::allocator<PanTreeStore::Row*> > >, 
PanTreeStore::RowCompareByColumn) (stl_algo.h:5445)






reply via email to

[Prev in Thread] Current Thread [Next in Thread]