Re: [Dclib-devel] Invalid read of size 1
Brought to you by:
davisking
From: Steven V. I. <st...@va...> - 2009-06-23 06:26:47
|
And here are writes? ==06:20:12:05.254 26069== ==06:20:12:05.254 26069== 2 errors in context 7 of 41: ==06:20:12:05.254 26069== Invalid write of size 1 ==06:20:12:05.254 26069== at 0x80E5063: dlib::threaded_object::thread_helper() (threaded_object_extension.cpp:191) ==06:20:12:05.255 26069== by 0x80F37CC: void dlib::dlib_create_new_thread_helper<dlib::threaded_object, &(dlib::threaded_object::thread_helper())>(void*) (create_new_thread_extension.h:24) ==06:20:12:05.255 26069== by 0x80E5171: dlib::threads_kernel_shared::thread_starter(void*) (threads_kernel_shared.cpp:231) ==06:20:12:05.255 26069== by 0x80E5DC8: dlib::threads_kernel_shared_helpers::thread_starter(void*) (threads_kernel_2.cpp:39) ==06:20:12:05.255 26069== by 0x29849A: start_thread (in /lib/ libpthread-2.5.so) ==06:20:12:05.255 26069== by 0x21842D: clone (in /lib/libc-2.5.so) ==06:20:12:05.255 26069== Address 0x41A6E28 is 88 bytes inside a block of size 104 free'd ==06:20:12:05.255 26069== at 0x4004CF1: operator delete(void*) (vg_replace_malloc.c:244) ==06:20:12:05.255 26069== by 0x80D238A: ProbePoolHelper::~ProbePoolHelper() (ProbePool.cpp:13) ==06:20:12:05.255 26069== by 0x80D1CE7: dlib::shared_ptr<ProbePoolHelper>::~shared_ptr() (shared_ptr.h:187) ==06:20:12:05.255 26069== by 0x80D1D3A: void std::_Destroy<dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:107) ==06:20:12:05.255 26069== by 0x80D1D50: void std::__destroy_aux<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, dlib::shared_ptr<ProbePoolHelper>*, __false_type) (stl_construct.h:122) ==06:20:12:05.255 26069== by 0x80D1D7F: void std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:155) ==06:20:12:05.255 26069== by 0x80D1D99: void std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*, dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*, dlib::shared_ptr<ProbePoolHelper>*, std::allocator<dlib::shared_ptr< ProbePoolHelper> >) (stl_construct.h:182) ==06:20:12:05.255 26069== by 0x80D2020: std::vector<dlib::shared_ptr<ProbePoolHelper>, std::allocator<dlib::shared_ptr<ProbePoolHelper> > >::~vector() (stl_vector.h:272) ==06:20:12:05.255 26069== by 0x80D144E: ProbePool::~ProbePool() (ProbePool.cpp:68) ==06:20:12:05.255 26069== by 0x80C3177: main (main.cpp:61) ==06:20:12:05.255 26069== ==06:20:12:05.255 26069== 2 errors in context 8 of 41: ==06:20:12:05.255 26069== Invalid write of size 1 ==06:20:12:05.255 26069== at 0x80E505C: dlib::threaded_object::thread_helper() (threaded_object_extension.cpp:190) ==06:20:12:05.255 26069== by 0x80F37CC: void dlib::dlib_create_new_thread_helper<dlib::threaded_object, &(dlib::threaded_object::thread_helper())>(void*) (create_new_thread_extension.h:24) ==06:20:12:05.255 26069== by 0x80E5171: dlib::threads_kernel_shared::thread_starter(void*) (threads_kernel_shared.cpp:231) ==06:20:12:05.255 26069== by 0x80E5DC8: dlib::threads_kernel_shared_helpers::thread_starter(void*) (threads_kernel_2.cpp:39) ==06:20:12:05.255 26069== by 0x29849A: start_thread (in /lib/ libpthread-2.5.so) ==06:20:12:05.255 26069== by 0x21842D: clone (in /lib/libc-2.5.so) ==06:20:12:05.255 26069== Address 0x41A6E29 is 89 bytes inside a block of size 104 free'd ==06:20:12:05.255 26069== at 0x4004CF1: operator delete(void*) (vg_replace_malloc.c:244) ==06:20:12:05.255 26069== by 0x80D238A: ProbePoolHelper::~ProbePoolHelper() (ProbePool.cpp:13) ==06:20:12:05.256 26069== by 0x80D1CE7: dlib::shared_ptr<ProbePoolHelper>::~shared_ptr() (shared_ptr.h:187) ==06:20:12:05.256 26069== by 0x80D1D3A: void std::_Destroy<dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:107) ==06:20:12:05.256 26069== by 0x80D1D50: void std::__destroy_aux<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, dlib::shared_ptr<ProbePoolHelper>*, __false_type) (stl_construct.h:122) ==06:20:12:05.256 26069== by 0x80D1D7F: void std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:155) ==06:20:12:05.256 26069== by 0x80D1D99: void std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*, dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*, dlib::shared_ptr<ProbePoolHelper>*, std::allocator<dlib::shared_ptr< ProbePoolHelper> >) (stl_construct.h:182) ==06:20:12:05.256 26069== by 0x80D2020: std::vector<dlib::shared_ptr<ProbePoolHelper>, std::allocator<dlib::shared_ptr<ProbePoolHelper> > >::~vector() (stl_vector.h:272) ==06:20:12:05.256 26069== by 0x80D144E: ProbePool::~ProbePool() (ProbePool.cpp:68) ==06:20:12:05.256 26069== by 0x80C3177: main (main.cpp:61) ==06:20:12:05.256 26069== 2009/6/23 Steven Van Ingelgem <st...@va...> > I think this is because the object is deleted, but somehow it is still > reading from it... Can that be? I don't delete threads from anywhere... > > ==06:20:12:05.257 26069== > ==06:20:12:05.257 26069== 2 errors in context 10 of 41: > ==06:20:12:05.257 26069== Invalid read of size 1 > ==06:20:12:05.257 26069== at 0x80DDA93: > dlib::threaded_object::should_stop() const > (threaded_object_extension.cpp:169) > ==06:20:12:05.257 26069== by 0x80D230C: ProbePoolHelper::thread() > (ProbePool.cpp:33) > ==06:20:12:05.257 26069== by 0x80E5043: > dlib::threaded_object::thread_helper() (threaded_object_extension.cpp:183) > ==06:20:12:05.257 26069== by 0x80F37CC: void > dlib::dlib_create_new_thread_helper<dlib::threaded_object, > &(dlib::threaded_object::thread_helper())>(void*) > (create_new_thread_extension.h:24) > ==06:20:12:05.257 26069== by 0x80E5171: > dlib::threads_kernel_shared::thread_starter(void*) > (threads_kernel_shared.cpp:231) > ==06:20:12:05.257 26069== by 0x80E5DC8: > dlib::threads_kernel_shared_helpers::thread_starter(void*) > (threads_kernel_2.cpp:39) > ==06:20:12:05.257 26069== by 0x29849A: start_thread (in /lib/ > libpthread-2.5.so) > ==06:20:12:05.257 26069== by 0x21842D: clone (in /lib/libc-2.5.so) > ==06:20:12:05.257 26069== Address 0x41A6E2A is 90 bytes inside a block of > size 104 free'd > ==06:20:12:05.257 26069== at 0x4004CF1: operator delete(void*) > (vg_replace_malloc.c:244) > ==06:20:12:05.257 26069== by 0x80D238A: > ProbePoolHelper::~ProbePoolHelper() (ProbePool.cpp:13) > ==06:20:12:05.257 26069== by 0x80D1CE7: > dlib::shared_ptr<ProbePoolHelper>::~shared_ptr() (shared_ptr.h:187) > ==06:20:12:05.257 26069== by 0x80D1D3A: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper> > >(dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:107) > ==06:20:12:05.257 26069== by 0x80D1D50: void > std::__destroy_aux<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, __false_type) (stl_construct.h:122) > ==06:20:12:05.257 26069== by 0x80D1D7F: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:155) > ==06:20:12:05.257 26069== by 0x80D1D99: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, std::allocator<dlib::shared_ptr< > ProbePoolHelper> >) (stl_construct.h:182) > ==06:20:12:05.257 26069== by 0x80D2020: > std::vector<dlib::shared_ptr<ProbePoolHelper>, > std::allocator<dlib::shared_ptr<ProbePoolHelper> > >::~vector() > (stl_vector.h:272) > ==06:20:12:05.257 26069== by 0x80D144E: ProbePool::~ProbePool() > (ProbePool.cpp:68) > ==06:20:12:05.258 26069== by 0x80C3177: main (main.cpp:61) > ==06:20:12:05.258 26069== > ==06:20:12:05.258 26069== 2 errors in context 11 of 41: > ==06:20:12:05.258 26069== Invalid read of size 1 > ==06:20:12:05.258 26069== at 0x80DDA88: > dlib::threaded_object::should_stop() const > (threaded_object_extension.cpp:167) > ==06:20:12:05.258 26069== by 0x80D230C: ProbePoolHelper::thread() > (ProbePool.cpp:33) > ==06:20:12:05.258 26069== by 0x80E5043: > dlib::threaded_object::thread_helper() (threaded_object_extension.cpp:183) > ==06:20:12:05.258 26069== by 0x80F37CC: void > dlib::dlib_create_new_thread_helper<dlib::threaded_object, > &(dlib::threaded_object::thread_helper())>(void*) > (create_new_thread_extension.h:24) > ==06:20:12:05.258 26069== by 0x80E5171: > dlib::threads_kernel_shared::thread_starter(void*) > (threads_kernel_shared.cpp:231) > ==06:20:12:05.258 26069== by 0x80E5DC8: > dlib::threads_kernel_shared_helpers::thread_starter(void*) > (threads_kernel_2.cpp:39) > ==06:20:12:05.258 26069== by 0x29849A: start_thread (in /lib/ > libpthread-2.5.so) > ==06:20:12:05.258 26069== by 0x21842D: clone (in /lib/libc-2.5.so) > ==06:20:12:05.258 26069== Address 0x41A6E2A is 90 bytes inside a block of > size 104 free'd > ==06:20:12:05.258 26069== at 0x4004CF1: operator delete(void*) > (vg_replace_malloc.c:244) > ==06:20:12:05.258 26069== by 0x80D238A: > ProbePoolHelper::~ProbePoolHelper() (ProbePool.cpp:13) > ==06:20:12:05.258 26069== by 0x80D1CE7: > dlib::shared_ptr<ProbePoolHelper>::~shared_ptr() (shared_ptr.h:187) > ==06:20:12:05.258 26069== by 0x80D1D3A: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper> > >(dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:107) > ==06:20:12:05.258 26069== by 0x80D1D50: void > std::__destroy_aux<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, __false_type) (stl_construct.h:122) > ==06:20:12:05.258 26069== by 0x80D1D7F: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:155) > ==06:20:12:05.258 26069== by 0x80D1D99: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, std::allocator<dlib::shared_ptr< > ProbePoolHelper> >) (stl_construct.h:182) > ==06:20:12:05.258 26069== by 0x80D2020: > std::vector<dlib::shared_ptr<ProbePoolHelper>, > std::allocator<dlib::shared_ptr<ProbePoolHelper> > >::~vector() > (stl_vector.h:272) > ==06:20:12:05.258 26069== by 0x80D144E: ProbePool::~ProbePool() > (ProbePool.cpp:68) > ==06:20:12:05.258 26069== by 0x80C3177: main (main.cpp:61) > ==06:20:12:05.258 26069== > ==06:20:12:05.258 26069== 2 errors in context 12 of 41: > ==06:20:12:05.258 26069== Invalid read of size 1 > ==06:20:12:05.258 26069== at 0x80DDA7D: > dlib::threaded_object::should_stop() const > (threaded_object_extension.cpp:167) > ==06:20:12:05.258 26069== by 0x80D230C: ProbePoolHelper::thread() > (ProbePool.cpp:33) > ==06:20:12:05.258 26069== by 0x80E5043: > dlib::threaded_object::thread_helper() (threaded_object_extension.cpp:183) > ==06:20:12:05.259 26069== by 0x80F37CC: void > dlib::dlib_create_new_thread_helper<dlib::threaded_object, > &(dlib::threaded_object::thread_helper())>(void*) > (create_new_thread_extension.h:24) > ==06:20:12:05.259 26069== by 0x80E5171: > dlib::threads_kernel_shared::thread_starter(void*) > (threads_kernel_shared.cpp:231) > ==06:20:12:05.259 26069== by 0x80E5DC8: > dlib::threads_kernel_shared_helpers::thread_starter(void*) > (threads_kernel_2.cpp:39) > ==06:20:12:05.259 26069== by 0x29849A: start_thread (in /lib/ > libpthread-2.5.so) > ==06:20:12:05.259 26069== by 0x21842D: clone (in /lib/libc-2.5.so) > ==06:20:12:05.259 26069== Address 0x41A6E28 is 88 bytes inside a block of > size 104 free'd > ==06:20:12:05.259 26069== at 0x4004CF1: operator delete(void*) > (vg_replace_malloc.c:244) > ==06:20:12:05.259 26069== by 0x80D238A: > ProbePoolHelper::~ProbePoolHelper() (ProbePool.cpp:13) > ==06:20:12:05.259 26069== by 0x80D1CE7: > dlib::shared_ptr<ProbePoolHelper>::~shared_ptr() (shared_ptr.h:187) > ==06:20:12:05.259 26069== by 0x80D1D3A: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper> > >(dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:107) > ==06:20:12:05.259 26069== by 0x80D1D50: void > std::__destroy_aux<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, __false_type) (stl_construct.h:122) > ==06:20:12:05.259 26069== by 0x80D1D7F: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:155) > ==06:20:12:05.259 26069== by 0x80D1D99: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, std::allocator<dlib::shared_ptr< > ProbePoolHelper> >) (stl_construct.h:182) > ==06:20:12:05.259 26069== by 0x80D2020: > std::vector<dlib::shared_ptr<ProbePoolHelper>, > std::allocator<dlib::shared_ptr<ProbePoolHelper> > >::~vector() > (stl_vector.h:272) > ==06:20:12:05.259 26069== by 0x80D144E: ProbePool::~ProbePool() > (ProbePool.cpp:68) > ==06:20:12:05.259 26069== by 0x80C3177: main (main.cpp:61) > ==06:20:12:05.259 26069== > ==06:20:12:05.259 26069== 2 errors in context 13 of 41: > ==06:20:12:05.259 26069== Invalid read of size 1 > ==06:20:12:05.259 26069== at 0x80DDA93: > dlib::threaded_object::should_stop() const > (threaded_object_extension.cpp:169) > ==06:20:12:05.259 26069== by 0x80D22C5: ProbePoolHelper::thread() > (ProbePool.cpp:46) > ==06:20:12:05.259 26069== by 0x80E5043: > dlib::threaded_object::thread_helper() (threaded_object_extension.cpp:183) > ==06:20:12:05.259 26069== by 0x80F37CC: void > dlib::dlib_create_new_thread_helper<dlib::threaded_object, > &(dlib::threaded_object::thread_helper())>(void*) > (create_new_thread_extension.h:24) > ==06:20:12:05.259 26069== by 0x80E5171: > dlib::threads_kernel_shared::thread_starter(void*) > (threads_kernel_shared.cpp:231) > ==06:20:12:05.259 26069== by 0x80E5DC8: > dlib::threads_kernel_shared_helpers::thread_starter(void*) > (threads_kernel_2.cpp:39) > ==06:20:12:05.259 26069== by 0x29849A: start_thread (in /lib/ > libpthread-2.5.so) > ==06:20:12:05.259 26069== by 0x21842D: clone (in /lib/libc-2.5.so) > ==06:20:12:05.259 26069== Address 0x41A6E2A is 90 bytes inside a block of > size 104 free'd > ==06:20:12:05.260 26069== at 0x4004CF1: operator delete(void*) > (vg_replace_malloc.c:244) > ==06:20:12:05.260 26069== by 0x80D238A: > ProbePoolHelper::~ProbePoolHelper() (ProbePool.cpp:13) > ==06:20:12:05.260 26069== by 0x80D1CE7: > dlib::shared_ptr<ProbePoolHelper>::~shared_ptr() (shared_ptr.h:187) > ==06:20:12:05.260 26069== by 0x80D1D3A: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper> > >(dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:107) > ==06:20:12:05.260 26069== by 0x80D1D50: void > std::__destroy_aux<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, __false_type) (stl_construct.h:122) > ==06:20:12:05.260 26069== by 0x80D1D7F: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:155) > ==06:20:12:05.260 26069== by 0x80D1D99: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, std::allocator<dlib::shared_ptr< > ProbePoolHelper> >) (stl_construct.h:182) > ==06:20:12:05.260 26069== by 0x80D2020: > std::vector<dlib::shared_ptr<ProbePoolHelper>, > std::allocator<dlib::shared_ptr<ProbePoolHelper> > >::~vector() > (stl_vector.h:272) > ==06:20:12:05.260 26069== by 0x80D144E: ProbePool::~ProbePool() > (ProbePool.cpp:68) > ==06:20:12:05.260 26069== by 0x80C3177: main (main.cpp:61) > ==06:20:12:05.260 26069== > ==06:20:12:05.260 26069== 2 errors in context 14 of 41: > ==06:20:12:05.260 26069== Invalid read of size 1 > ==06:20:12:05.260 26069== at 0x80DDA88: > dlib::threaded_object::should_stop() const > (threaded_object_extension.cpp:167) > ==06:20:12:05.260 26069== by 0x80D22C5: ProbePoolHelper::thread() > (ProbePool.cpp:46) > ==06:20:12:05.260 26069== by 0x80E5043: > dlib::threaded_object::thread_helper() (threaded_object_extension.cpp:183) > ==06:20:12:05.260 26069== by 0x80F37CC: void > dlib::dlib_create_new_thread_helper<dlib::threaded_object, > &(dlib::threaded_object::thread_helper())>(void*) > (create_new_thread_extension.h:24) > ==06:20:12:05.260 26069== by 0x80E5171: > dlib::threads_kernel_shared::thread_starter(void*) > (threads_kernel_shared.cpp:231) > ==06:20:12:05.260 26069== by 0x80E5DC8: > dlib::threads_kernel_shared_helpers::thread_starter(void*) > (threads_kernel_2.cpp:39) > ==06:20:12:05.260 26069== by 0x29849A: start_thread (in /lib/ > libpthread-2.5.so) > ==06:20:12:05.260 26069== by 0x21842D: clone (in /lib/libc-2.5.so) > ==06:20:12:05.260 26069== Address 0x41A6E2A is 90 bytes inside a block of > size 104 free'd > ==06:20:12:05.260 26069== at 0x4004CF1: operator delete(void*) > (vg_replace_malloc.c:244) > ==06:20:12:05.260 26069== by 0x80D238A: > ProbePoolHelper::~ProbePoolHelper() (ProbePool.cpp:13) > ==06:20:12:05.260 26069== by 0x80D1CE7: > dlib::shared_ptr<ProbePoolHelper>::~shared_ptr() (shared_ptr.h:187) > ==06:20:12:05.260 26069== by 0x80D1D3A: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper> > >(dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:107) > ==06:20:12:05.261 26069== by 0x80D1D50: void > std::__destroy_aux<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, __false_type) (stl_construct.h:122) > ==06:20:12:05.261 26069== by 0x80D1D7F: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:155) > ==06:20:12:05.261 26069== by 0x80D1D99: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, std::allocator<dlib::shared_ptr< > ProbePoolHelper> >) (stl_construct.h:182) > ==06:20:12:05.261 26069== by 0x80D2020: > std::vector<dlib::shared_ptr<ProbePoolHelper>, > std::allocator<dlib::shared_ptr<ProbePoolHelper> > >::~vector() > (stl_vector.h:272) > ==06:20:12:05.261 26069== by 0x80D144E: ProbePool::~ProbePool() > (ProbePool.cpp:68) > ==06:20:12:05.261 26069== by 0x80C3177: main (main.cpp:61) > ==06:20:12:05.261 26069== > ==06:20:12:05.261 26069== 2 errors in context 15 of 41: > ==06:20:12:05.261 26069== Invalid read of size 1 > ==06:20:12:05.261 26069== at 0x80DDA7D: > dlib::threaded_object::should_stop() const > (threaded_object_extension.cpp:167) > ==06:20:12:05.261 26069== by 0x80D22C5: ProbePoolHelper::thread() > (ProbePool.cpp:46) > ==06:20:12:05.261 26069== by 0x80E5043: > dlib::threaded_object::thread_helper() (threaded_object_extension.cpp:183) > ==06:20:12:05.261 26069== by 0x80F37CC: void > dlib::dlib_create_new_thread_helper<dlib::threaded_object, > &(dlib::threaded_object::thread_helper())>(void*) > (create_new_thread_extension.h:24) > ==06:20:12:05.261 26069== by 0x80E5171: > dlib::threads_kernel_shared::thread_starter(void*) > (threads_kernel_shared.cpp:231) > ==06:20:12:05.261 26069== by 0x80E5DC8: > dlib::threads_kernel_shared_helpers::thread_starter(void*) > (threads_kernel_2.cpp:39) > ==06:20:12:05.261 26069== by 0x29849A: start_thread (in /lib/ > libpthread-2.5.so) > ==06:20:12:05.261 26069== by 0x21842D: clone (in /lib/libc-2.5.so) > ==06:20:12:05.261 26069== Address 0x41A6E28 is 88 bytes inside a block of > size 104 free'd > ==06:20:12:05.261 26069== at 0x4004CF1: operator delete(void*) > (vg_replace_malloc.c:244) > ==06:20:12:05.261 26069== by 0x80D238A: > ProbePoolHelper::~ProbePoolHelper() (ProbePool.cpp:13) > ==06:20:12:05.261 26069== by 0x80D1CE7: > dlib::shared_ptr<ProbePoolHelper>::~shared_ptr() (shared_ptr.h:187) > ==06:20:12:05.261 26069== by 0x80D1D3A: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper> > >(dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:107) > ==06:20:12:05.261 26069== by 0x80D1D50: void > std::__destroy_aux<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, __false_type) (stl_construct.h:122) > ==06:20:12:05.261 26069== by 0x80D1D7F: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*>(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*) (stl_construct.h:155) > ==06:20:12:05.261 26069== by 0x80D1D99: void > std::_Destroy<dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper> >(dlib::shared_ptr<ProbePoolHelper>*, > dlib::shared_ptr<ProbePoolHelper>*, std::allocator<dlib::shared_ptr< > ProbePoolHelper> >) (stl_construct.h:182) > ==06:20:12:05.262 26069== by 0x80D2020: > std::vector<dlib::shared_ptr<ProbePoolHelper>, > std::allocator<dlib::shared_ptr<ProbePoolHelper> > >::~vector() > (stl_vector.h:272) > ==06:20:12:05.262 26069== by 0x80D144E: ProbePool::~ProbePool() > (ProbePool.cpp:68) > ==06:20:12:05.262 26069== by 0x80C3177: main (main.cpp:61) > ==06:20:12:05.262 26069== > > > > > |