I can't tell what's happening based on the information that you've provided. The stack trace appears to reach some
const_iterator
function in
std::list
. Did it throw an exception?
The stack trace seems to be from another thread, because neither
pthread_mutex_lock
nor
list::push_back
appears in the traceback. I don't think the code fragment that you posted is the cause of the problem.
I just found an online
demangler[
^] so that we can get a better idea of what functions are in your traceback. Unfortunately, it still doesn't help me explain why your program is crashing:
00000001003766dc std::_List_const_iterator<std::string>::operator++() (ffffffff75bc9eb0, ffffffff75bc9eb8, 0, 0, 0, 0) 14
000000010036d8ac std::iterator_traits<std::_List_const_iterator<std::string> >::difference_type std::__distance<std::_List_const_iterator<std::string> >(std::_List_const_iterator<std::string>, std::_List_const_iterator<std::string>, std::input_iterator_tag) (10bb35c20, 100604d38, 0, 3e, 101dbff39, 0) 54
0000000100365adc std::iterator_traits<std::_List_const_iterator<std::string> >::difference_type std::distance<std::_List_const_iterator<std::string> >(std::_List_const_iterator<std::string>, std::_List_const_iterator<std::string>) (10bb35c20, 100604d38, ffffffff75bc9ef0, ffffffff7ee008c8, ff0000, 80808080) 50
0000000100360a64 std::list<std::string, std::allocator<std::string> >::size() const (100604d38, ffffffff75bca3c0, 100437e38, 10c6e2370, c75, ffffffff75bca430) 40
00000001000a5438 _ZN10Client15DecodeDeliverSmEv (ffffffff75bcbaa0, 10358b9f0, 1, 0, 4b0427000102001e, 0) 7190
00000001000ae588 _ZN10Client14ProcessMessageEv (ffffffff75bcbaa0, ffffffff7e509200, 0, 3e8, 0, f4240) 21b4
00000001000ba518 _Z12ThClientPv (0, 1fc000, 0, 0, 1000ba318, 1) 200