[trink@node00 html]$ valgrind ./find.cgi ==13071== Memcheck, a memory error detector. ==13071== Copyright (C) 2002-2005, and GNU GPL'd, by Julian Seward et al. ==13071== Using LibVEX rev 1471, a library for dynamic binary translation. ==13071== Copyright (C) 2004-2005, and GNU GPL'd, by OpenWorks LLP. ==13071== Using valgrind-3.1.0, a dynamic binary instrumentation framework. ==13071== Copyright (C) 2000-2005, and GNU GPL'd, by Julian Seward et al. ==13071== For more details, rerun with: -v ==13071== omega - omega 0.9.6 (compiled Jul 28 2006 20:28:36) Enter NAME=VALUE lines, end with blank line P=day:20060801 audio versioning -site:listme -site:bugme mime:text/html SORT=0 ==13071== Invalid read of size 4 ==13071== at 0xC35A19: __gnu_cxx::__exchange_and_add(int volatile*, int) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187B2: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F71: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40E2F9F: std::pair::operator=(std::pair const&) (stl_pair.h:69) ==13071== by 0x40DFB87: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:540) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x8064293: eval_file(std::string const&) (in /var/www/html/find.cgi) ==13071== Address 0x4522438 is 8 bytes inside a block of size 23 free'd ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F71: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40DFB05: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:529) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x8064293: eval_file(std::string const&) (in /var/www/html/find.cgi) ==13071== ==13071== Invalid free() / delete / delete[] ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F71: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40E2F9F: std::pair::operator=(std::pair const&) (stl_pair.h:69) ==13071== by 0x40DFB87: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:540) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== Address 0x4522430 is 0 bytes inside a block of size 23 free'd ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F71: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40DFB05: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:529) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x8064293: eval_file(std::string const&) (in /var/www/html/find.cgi) ==13071== ==13071== Invalid read of size 4 ==13071== at 0xC16650: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E3543: bool std::operator< , std::allocator >(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&) (basic_string.h:2213) ==13071== by 0x40E3571: std::less::operator()(std::string const&, std::string const&) const (stl_function.h:227) ==13071== by 0x40E57EC: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::find(std::string const&) (stl_tree.h:1317) ==13071== by 0x40E58E6: std::map, std::less, std::allocator > > >::find(std::string const&) (stl_map.h:534) ==13071== by 0x40DF761: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:488) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x8064293: eval_file(std::string const&) (in /var/www/html/find.cgi) ==13071== Address 0x4522678 is 0 bytes inside a block of size 29 free'd ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F4D: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40E2F9F: std::pair::operator=(std::pair const&) (stl_pair.h:69) ==13071== by 0x40DFB87: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:540) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== ==13071== Invalid read of size 1 ==13071== at 0xC16679: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E3543: bool std::operator< , std::allocator >(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&) (basic_string.h:2213) ==13071== by 0x40E3571: std::less::operator()(std::string const&, std::string const&) const (stl_function.h:227) ==13071== by 0x40E57EC: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::find(std::string const&) (stl_tree.h:1317) ==13071== by 0x40E58E6: std::map, std::less, std::allocator > > >::find(std::string const&) (stl_map.h:534) ==13071== by 0x40DF761: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:488) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x8064293: eval_file(std::string const&) (in /var/www/html/find.cgi) ==13071== Address 0x4522684 is 12 bytes inside a block of size 29 free'd ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F4D: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40E2F9F: std::pair::operator=(std::pair const&) (stl_pair.h:69) ==13071== by 0x40DFB87: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:540) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== ==13071== Invalid read of size 4 ==13071== at 0xC1665E: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E3543: bool std::operator< , std::allocator >(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&) (basic_string.h:2213) ==13071== by 0x40E3571: std::less::operator()(std::string const&, std::string const&) const (stl_function.h:227) ==13071== by 0x40EC368: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::insert_unique(std::pair > const&) (stl_tree.h:921) ==13071== by 0x40EC522: std::map, std::less, std::allocator > > >::insert(std::pair > const&) (stl_map.h:396) ==13071== by 0x40DF86A: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:494) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x8064293: eval_file(std::string const&) (in /var/www/html/find.cgi) ==13071== Address 0x4522678 is 0 bytes inside a block of size 29 free'd ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F4D: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40E2F9F: std::pair::operator=(std::pair const&) (stl_pair.h:69) ==13071== by 0x40DFB87: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:540) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== ==13071== Invalid read of size 1 ==13071== at 0xC16679: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E3543: bool std::operator< , std::allocator >(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&) (basic_string.h:2213) ==13071== by 0x40E3571: std::less::operator()(std::string const&, std::string const&) const (stl_function.h:227) ==13071== by 0x40EC368: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::insert_unique(std::pair > const&) (stl_tree.h:921) ==13071== by 0x40EC522: std::map, std::less, std::allocator > > >::insert(std::pair > const&) (stl_map.h:396) ==13071== by 0x40DF86A: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:494) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x8064293: eval_file(std::string const&) (in /var/www/html/find.cgi) ==13071== Address 0x4522684 is 12 bytes inside a block of size 29 free'd ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F4D: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40E2F9F: std::pair::operator=(std::pair const&) (stl_pair.h:69) ==13071== by 0x40DFB87: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:540) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== ==13071== Invalid read of size 4 ==13071== at 0xC35A19: __gnu_cxx::__exchange_and_add(int volatile*, int) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18F03: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E6DCD: std::pair >::~pair() (stl_pair.h:69) ==13071== by 0x40E6E18: __gnu_cxx::new_allocator > >::destroy(std::pair >*) (new_allocator.h:107) ==13071== by 0x40E7AF4: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::destroy_node(std::_Rb_tree_node > >*) (stl_tree.h:391) ==13071== by 0x40E7B87: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::_M_erase(std::_Rb_tree_node > >*) (stl_tree.h:1266) ==13071== by 0x40E7BC6: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::~_Rb_tree() (stl_tree.h:578) ==13071== by 0x40E7C22: std::map, std::less, std::allocator > > >::~map() (stl_map.h:93) ==13071== by 0x40E1164: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:835) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== Address 0x4522680 is 8 bytes inside a block of size 29 free'd ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F4D: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40E2F9F: std::pair::operator=(std::pair const&) (stl_pair.h:69) ==13071== by 0x40DFB87: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:540) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== ==13071== Invalid free() / delete / delete[] ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18F16: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E6DCD: std::pair >::~pair() (stl_pair.h:69) ==13071== by 0x40E6E18: __gnu_cxx::new_allocator > >::destroy(std::pair >*) (new_allocator.h:107) ==13071== by 0x40E7AF4: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::destroy_node(std::_Rb_tree_node > >*) (stl_tree.h:391) ==13071== by 0x40E7B87: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::_M_erase(std::_Rb_tree_node > >*) (stl_tree.h:1266) ==13071== by 0x40E7BC6: std::_Rb_tree >, std::_Select1st > >, std::less, std::allocator > > >::~_Rb_tree() (stl_tree.h:578) ==13071== by 0x40E7C22: std::map, std::less, std::allocator > > >::~map() (stl_map.h:93) ==13071== by 0x40E1164: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:835) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== Address 0x4522678 is 0 bytes inside a block of size 29 free'd ==13071== at 0x4004B85: operator delete(void*) (vg_replace_malloc.c:246) ==13071== by 0xC1638C: std::string::_Rep::_M_destroy(std::allocator const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC187C5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0xC18823: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8) ==13071== by 0x40E2F4D: Xapian::Internal::MSetItem::operator=(Xapian::Internal::MSetItem const&) (omenquireinternal.h:70) ==13071== by 0x40E2F9F: std::pair::operator=(std::pair const&) (stl_pair.h:69) ==13071== by 0x40DFB87: MultiMatch::get_mset(unsigned, unsigned, unsigned, Xapian::MSet&, Xapian::MatchDecider const*) (multimatch.cc:540) ==13071== by 0x4103C7B: Xapian::Enquire::Internal::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:714) ==13071== by 0x4103F90: Xapian::Enquire::get_mset(unsigned, unsigned, unsigned, Xapian::RSet const*, Xapian::MatchDecider const*) const (omenquire.cc:1023) ==13071== by 0x8059B61: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) ==13071== by 0x80582F2: eval(std::string const&, std::vector > const&) (in /var/www/html/find.cgi) << removed search results >> ==13071== ==13071== ERROR SUMMARY: 26 errors from 8 contexts (suppressed: 17 from 1) ==13071== malloc/free: in use at exit: 1,139,238 bytes in 84 blocks. ==13071== malloc/free: 52,932 allocs, 52,850 frees, 5,610,394 bytes allocated. ==13071== For counts of detected errors, rerun with: -v ==13071== searching for pointers to 84 not-freed blocks. ==13071== checked 1,271,204 bytes. ==13071== ==13071== LEAK SUMMARY: ==13071== definitely lost: 196 bytes in 10 blocks. ==13071== possibly lost: 619 bytes in 15 blocks. ==13071== still reachable: 1,138,423 bytes in 59 blocks. ==13071== suppressed: 0 bytes in 0 blocks. ==13071== Use --leak-check=full to see details of leaked memory.