==20983== Memcheck, a memory error detector.
==20983== Copyright (C) 2002-2005, and GNU GPL'd, by Julian Seward et al.
==20983== Using LibVEX rev exported, a library for dynamic binary translation.
==20983== Copyright (C) 2004-2005, and GNU GPL'd, by OpenWorks LLP.
==20983== Using valgrind-3.0.0.SVN, a dynamic binary instrumentation framework.
==20983== Copyright (C) 2000-2005, and GNU GPL'd, by Julian Seward et al.
--20983-- Valgrind library directory: /opt/valgrind/lib/valgrind
--20983-- Command line
--20983--    .libs/lt-yacsd
--20983--    --log=console
--20983--    --no-fork
--20983-- Startup, with flags:
--20983--    --tool=memcheck
--20983--    --num-callers=32
--20983--    --show-reachable=yes
--20983--    --track-fds=yes
--20983--    -v
--20983--    --
--20983-- Contents of /proc/version:
--20983--   Linux version 2.6.11-hardened-r15 (root@battousai) (gcc version 3.4.4 (Gentoo 3.4.4, ssp-3.4.4-1.0, pie-8.7.8)) #1 Thu Aug 11 04:07:26 CEST 2005
--20983-- Reading syms from /home/trapni/projects/yacs-0.5/server/yacsd/src/.libs/lt-yacsd (0x400000)
--20983-- Reading syms from /lib/ld-2.3.5.so (0x155000000)
--20983-- Reading syms from /opt/valgrind/lib/valgrind/stage2 (0x7794E0000000)
--20983-- Reading suppressions file: /opt/valgrind/lib/valgrind/default.supp
==20983== 
--20983-- Reading syms from /opt/valgrind/lib/valgrind/vg_preload_core.so (0x155119000)
--20983-- Reading syms from /opt/valgrind/lib/valgrind/vgpreload_memcheck.so (0x15521A000)
--20983-- REDIR: 0x155010450 (index) redirected to 0x15521DD10 (index)
--20983-- REDIR: 0x155010600 (strcmp) redirected to 0x15521E1D0 (strcmp)
--20983-- REDIR: 0x155010630 (strlen) redirected to 0x15521DF50 (strlen)
--20983-- Reading syms from /home/trapni/projects/yacs-0.5/server/libyacs/src/yacs/.libs/libyacs.so.0.5.0 (0x155320000)
--20983-- Reading syms from /home/trapni/projects/libswl-0.4/debug/src/.libs/libswl-0.4.so.0.4.0 (0x1556FD000)
--20983-- Reading syms from /home/trapni/projects/yacs-0.5/support/libyacsutil/src/yacsutil/.libs/libyacsutil.so.0.0.0 (0x1568DA000)
--20983-- Reading syms from /lib/libcrack.so.2.8.0 (0x156B42000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libgnutls-extra.so.12.3.1 (0x156C50000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libopencdk.so.8.0.3 (0x156D5C000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/liblzo.so.1.0.0 (0x156E81000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libgnutls.so.12.3.1 (0x156F9E000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libmysqlclient_r.so.14.0.0 (0x157123000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libz.so.1.2.3 (0x157354000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libcrypt-2.3.5.so (0x15746A000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libssl.so.0.9.7 (0x15759E000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libcrypto.so.0.9.7 (0x1576D5000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libpcre.so.0.0.1 (0x157918000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libpthread-2.3.5.so (0x157A45000)
--20983-- Reading syms from /lib/librt-2.3.5.so (0x157B5A000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libdl-2.3.5.so (0x157C64000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libacl.so.1.1.0 (0x157D67000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libattr.so.1.1.0 (0x157E6E000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libgcrypt.so.11.2.0 (0x157F72000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libnsl-2.3.5.so (0x1580C1000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/libgpg-error.so.0.1.4 (0x1581D8000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.4.4/libstdc++.so.6.0.3 (0x1582DC000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libm-2.3.5.so (0x1584CC000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libgcc_s.so.1 (0x158652000)
--20983--    object doesn't have a symbol table
--20983-- Reading syms from /lib/libc-2.3.5.so (0x15875E000)
--20983--    object doesn't have a symbol table
--20983-- REDIR: 0x1587D0240 (memset) redirected to 0x15521E660 (memset)
--20983-- REDIR: 0x1587D0980 (memcpy) redirected to 0x15521E220 (memcpy)
--20983-- REDIR: 0x1587CF3E0 (rindex) redirected to 0x15521DC30 (rindex)
--20983-- REDIR: 0x1587CEFF0 (strlen) redirected to 0x15521DF10 (strlen)
--20983-- REDIR: 0x15838B140 (operator new(unsigned long)) redirected to 0x15521C340 (operator new(unsigned long))
--20983-- REDIR: 0x1587D00D0 (memmove) redirected to 0x15521E680 (memmove)
--20983-- REDIR: 0x1587C9E00 (malloc) redirected to 0x15521BF00 (malloc)
--20983-- REDIR: 0x1587CEA70 (strcpy) redirected to 0x15521DF70 (strcpy)
--20983-- REDIR: 0x158389F10 (operator delete(void*)) redirected to 0x15521CF40 (operator delete(void*))
--20983-- REDIR: 0x1587CFAC0 (memchr) redirected to 0x15521E200 (memchr)
--20983-- REDIR: 0x1587CF250 (strncmp) redirected to 0x15521E150 (strncmp)
--20983-- REDIR: 0xFFFFFFFFFF600400 (???) redirected to 0x7794E00308C5 (???)
--20983-- REDIR: 0x1587CFBE0 (bcmp) redirected to 0x15521E3C0 (bcmp)
--20983-- REDIR: 0x1587C7DA0 (free) redirected to 0x15521CC20 (free)
--20983-- REDIR: 0x1587CEA30 (strcmp) redirected to 0x15521E1A0 (strcmp)
--20983-- REDIR: 0x1587C9AD0 (calloc) redirected to 0x15521D580 (calloc)
--20983-- REDIR: 0x1587CE6C0 (strcat) redirected to 0x15521DD30 (strcat)
--20983-- REDIR: 0x1587D1250 (strchrnul) redirected to 0x15521E6D0 (strchrnul)
--20983-- REDIR: 0x1587D0630 (stpcpy) redirected to 0x15521E3F0 (stpcpy)
--20983-- REDIR: 0x1587CE880 (index) redirected to 0x15521DCD0 (index)
--20983-- Reading syms from /lib/libnss_files-2.3.5.so (0x158C99000)
--20983--    object doesn't have a symbol table
--20983-- REDIR: 0x1587D1160 (rawmemchr) redirected to 0x15521E6F0 (rawmemchr)
--20983-- REDIR: 0xFFFFFFFFFF600000 (???) redirected to 0x7794E00308BB (???)
--20983-- REDIR: 0x1587CA4B0 (realloc) redirected to 0x15521D650 (realloc)
2005-08-12 09:14:58,938 notice: Loading module mod_chat.so
--20983-- Reading syms from /opt/sandbox/swl/0.4/lib/yacs/mod_chat.so (0x158EA5000)
2005-08-12 09:15:01,073 debug: 5781690776.onCommunitySpawn.add
2005-08-12 09:15:01,358 debug: 5781690776.onCommunityUnspawn.add
2005-08-12 09:15:01,696 notice: Loading module mod_character.so
--20983-- Reading syms from /opt/sandbox/swl/0.4/lib/yacs/mod_character.so (0x1593D5000)
2005-08-12 09:15:02,279 debug: 5781690776.onCommunitySpawn.add
2005-08-12 09:15:02,358 debug: 5781690776.onCommunityUnspawn.add
2005-08-12 09:15:02,422 notice: YaCS/0.5.0 Server is up and running
2005-08-12 09:15:19,238 notice: YaCS Server received SIGTERM
2005-08-12 09:15:19,351 notice: YaCS Server is going to shutdown NOW!
2005-08-12 09:15:19,496 debug: [0:yacs]: unloadModule: character
2005-08-12 09:15:19,621 debug: 5781690776.onCommunitySpawn.remove
2005-08-12 09:15:19,849 debug: 5781690776.onCommunityUnspawn.remove
--20983-- discard syms at 0x1593D5000-0x1595A0000 in /opt/sandbox/swl/0.4/lib/yacs/mod_character.so due to munmap()
2005-08-12 09:15:20,193 debug: [0:yacs]: unloadModule: chat
2005-08-12 09:15:20,267 debug: 5781690776.onCommunitySpawn.remove
==20983== Invalid read of size 8
==20983==    at 0x155EC247D: System::TSharedCounter::release() (TSharedPtr.cpp:63)
==20983==    by 0x155EC26C3: System::TSharedCount::~TSharedCount() (TSharedPtr.cpp:101)
==20983==    by 0x1555273FC: System::TSharedPtr<System::TFunctorImpl<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TSharedPtr() (TSharedPtr.h:477)
==20983==    by 0x155527447: System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> >::~TFunctor() (TDynamicArray.cc:37)
==20983==    by 0x1555153F7: System::TArrayRep<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::destroy() (TDynamicArray.cc:37)
==20983==    by 0x1555153AF: System::TArrayRep<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::release() (TDynamicArray.cc:75)
==20983==    by 0x15552B3FF: System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TDynamicArray() (TDynamicArray.cc:194)
==20983==    by 0x155516120: void System::safeDelete<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >(System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*) (TSharedPtr.h:27)
==20983==    by 0x1555160F6: System::TSafeDeleter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::operator()(System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*) const (TSharedPtr.h:38)
==20983==    by 0x15552C026: System::TAdaptedSharedCounter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*, System::TSafeDeleter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > > >::dispose() (TSharedPtr.h:392)
==20983==    by 0x155EC2481: System::TSharedCounter::release() (TSharedPtr.cpp:63)
==20983==    by 0x155EC26C3: System::TSharedCount::~TSharedCount() (TSharedPtr.cpp:101)
==20983==    by 0x15551479C: System::TSharedPtr<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::~TSharedPtr() (TDictionary.cc:387)
==20983==    by 0x15551462F: System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TArrayList() (TDictionary.cc:387)
==20983==    by 0x1555147CB: System::TPair<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::~TPair() (TDictionary.cc:387)
==20983==    by 0x15552B19A: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::TNode::~TNode() (TDictionary.cc:68)
==20983==    by 0x1555103EA: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::TNode**) (TDictionary.cc:270)
==20983==    by 0x15550E5A8: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::TNode**, int const&) (TDictionary.cc:240)
==20983==    by 0x15550CA18: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(int const&) (TDictionary.cc:423)
==20983==    by 0x15550A855: System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::remove(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (THook.cc:117)
==20983==    by 0x1554F7719: yacs::TServer::onRemoveCommunitySpawnHook(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TServer.cpp:196)
==20983==    by 0x1555187E0: System::TMemFunHandler<System::TFunctor<void, System::TTypeList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&, System::NullType> >, yacs::TServer*, void (yacs::TServer::*)(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&)>::operator()(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TFunctor.h:300)
==20983==    by 0x159170F61: System::TFunctor<void, System::TTypeList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&, System::NullType> >::operator()(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) const (TFunctor.cc:38)
==20983==    by 0x1591702E5: System::TEventManager<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> > >::remove(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TEventManager.cc:43)
==20983==    by 0x15916EDAE: System::TEventManager<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> > >::operator-=(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TEventManager.cc:54)
==20983==    by 0x159166D02: chat::TChatModule::~TChatModule() (TChatModule.cpp:99)
==20983==    by 0x1591B7C3E: chat::finalizeModule() (mod_chat.cpp:166)
==20983==    by 0x1554FC46C: yacs::TServer::unloadModule(System::TStringBase<char> const&) (TServer.cpp:557)
==20983==    by 0x1554F6A61: yacs::TServer::~TServer() (TServer.cpp:162)
==20983==    by 0x421F3F: System::TAutoPtr<yacs::TServer>::~TAutoPtr() (TAutoPtr.h:92)
==20983==    by 0x41F304: serve(System::TVarData const&) (yacsd.cpp:333)
==20983==    by 0x4200DC: main (yacsd.cpp:390)
==20983==  Address 0x15959CE90 is not stack'd, malloc'd or (recently) free'd
==20983== 
==20983== Process terminating with default action of signal 11 (SIGSEGV): dumping core
==20983==  Access not within mapped region at address 0x15959CE90
==20983==    at 0x155EC247D: System::TSharedCounter::release() (TSharedPtr.cpp:63)
==20983==    by 0x155EC26C3: System::TSharedCount::~TSharedCount() (TSharedPtr.cpp:101)
==20983==    by 0x1555273FC: System::TSharedPtr<System::TFunctorImpl<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TSharedPtr() (TSharedPtr.h:477)
==20983==    by 0x155527447: System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> >::~TFunctor() (TDynamicArray.cc:37)
==20983==    by 0x1555153F7: System::TArrayRep<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::destroy() (TDynamicArray.cc:37)
==20983==    by 0x1555153AF: System::TArrayRep<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::release() (TDynamicArray.cc:75)
==20983==    by 0x15552B3FF: System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TDynamicArray() (TDynamicArray.cc:194)
==20983==    by 0x155516120: void System::safeDelete<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >(System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*) (TSharedPtr.h:27)
==20983==    by 0x1555160F6: System::TSafeDeleter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::operator()(System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*) const (TSharedPtr.h:38)
==20983==    by 0x15552C026: System::TAdaptedSharedCounter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*, System::TSafeDeleter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > > >::dispose() (TSharedPtr.h:392)
==20983==    by 0x155EC2481: System::TSharedCounter::release() (TSharedPtr.cpp:63)
==20983==    by 0x155EC26C3: System::TSharedCount::~TSharedCount() (TSharedPtr.cpp:101)
==20983==    by 0x15551479C: System::TSharedPtr<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::~TSharedPtr() (TDictionary.cc:387)
==20983==    by 0x15551462F: System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TArrayList() (TDictionary.cc:387)
==20983==    by 0x1555147CB: System::TPair<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::~TPair() (TDictionary.cc:387)
==20983==    by 0x15552B19A: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::TNode::~TNode() (TDictionary.cc:68)
==20983==    by 0x1555103EA: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::TNode**) (TDictionary.cc:270)
==20983==    by 0x15550E5A8: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::TNode**, int const&) (TDictionary.cc:240)
==20983==    by 0x15550CA18: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(int const&) (TDictionary.cc:423)
==20983==    by 0x15550A855: System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::remove(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (THook.cc:117)
==20983==    by 0x1554F7719: yacs::TServer::onRemoveCommunitySpawnHook(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TServer.cpp:196)
==20983==    by 0x1555187E0: System::TMemFunHandler<System::TFunctor<void, System::TTypeList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&, System::NullType> >, yacs::TServer*, void (yacs::TServer::*)(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&)>::operator()(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TFunctor.h:300)
==20983==    by 0x159170F61: System::TFunctor<void, System::TTypeList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&, System::NullType> >::operator()(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) const (TFunctor.cc:38)
==20983==    by 0x1591702E5: System::TEventManager<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> > >::remove(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TEventManager.cc:43)
==20983==    by 0x15916EDAE: System::TEventManager<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> > >::operator-=(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TEventManager.cc:54)
==20983==    by 0x159166D02: chat::TChatModule::~TChatModule() (TChatModule.cpp:99)
==20983==    by 0x1591B7C3E: chat::finalizeModule() (mod_chat.cpp:166)
==20983==    by 0x1554FC46C: yacs::TServer::unloadModule(System::TStringBase<char> const&) (TServer.cpp:557)
==20983==    by 0x1554F6A61: yacs::TServer::~TServer() (TServer.cpp:162)
==20983==    by 0x421F3F: System::TAutoPtr<yacs::TServer>::~TAutoPtr() (TAutoPtr.h:92)
==20983==    by 0x41F304: serve(System::TVarData const&) (yacsd.cpp:333)
==20983==    by 0x4200DC: main (yacsd.cpp:390)
--20983-- discard syms at 0x158C99000-0x158DA5000 in /lib/libnss_files-2.3.5.so due to munmap()
==20983== 
==20983== FILE DESCRIPTORS: 5 open at exit.
==20983== Open AF_INET socket 4: <unbound> <-> unbound
==20983==    at 0x158826159: socket (in /lib/libc-2.3.5.so)
==20983==    by 0x15604BD8C: System::Network::TNetworkServer::TPrivate::createTCP(System::TStringBase<char> const&, int) (TNetworkServer.cpp:148)
==20983==    by 0x156049B82: System::Network::TNetworkServer::addListener(System::TStringBase<char> const&, System::TFunctor<void, System::TTypeList<System::Network::TNetworkStream*, System::TTypeList<System::Network::TListener*, System::NullType> > >) (TNetworkServer.cpp:274)
==20983==    by 0x1554F2589: yacs::TServer::TServer(int, System::TStringBase<char> const&, System::TStringBase<char> const&, System::TStringBase<char> const&, System::TStringBase<char> const&, System::TStringBase<char> const&, System::TStringBase<char> const&, System::Diagnostics::ILogger*, System::TStringBase<char> const&, unsigned, System::TStringBase<char> const&, System::TStringBase<char> const&) (TServer.cpp:86)
==20983==    by 0x41DB7F: spawnServer() (yacsd.cpp:281)
==20983==    by 0x41F2C9: serve(System::TVarData const&) (yacsd.cpp:327)
==20983==    by 0x4200DC: main (yacsd.cpp:390)
==20983== 
==20983== Open file descriptor 3: /dev/urandom
==20983==    at 0x157A50B82: __open_nocancel (in /lib/libpthread-2.3.5.so)
==20983==    by 0x157FA4DC6: (within /usr/lib/libgcrypt.so.11.2.0)
==20983==    by 0x157F8A28A: (within /usr/lib/libgcrypt.so.11.2.0)
==20983==    by 0x157F8A8B7: (within /usr/lib/libgcrypt.so.11.2.0)
==20983==    by 0x157F8B2D5: (within /usr/lib/libgcrypt.so.11.2.0)
==20983==    by 0x157FABBAB: gcry_mpi_randomize (in /usr/lib/libgcrypt.so.11.2.0)
==20983==    by 0x157F884A3: (within /usr/lib/libgcrypt.so.11.2.0)
==20983==    by 0x157F88A53: (within /usr/lib/libgcrypt.so.11.2.0)
==20983==    by 0x157F89640: gcry_prime_generate (in /usr/lib/libgcrypt.so.11.2.0)
==20983==    by 0x156FD62E8: _gnutls_dh_generate_prime (in /usr/lib/libgnutls.so.12.3.1)
==20983==    by 0x156FD6611: gnutls_dh_params_generate2 (in /usr/lib/libgnutls.so.12.3.1)
==20983==    by 0x1569A414D: TCredentials::TCredentials() (secnet.cpp:107)
==20983==    by 0x1569A6DAD: TSecureNetworkServer::TPrivate::TPrivate() (secnet.cpp:175)
==20983==    by 0x1569A4DAC: TSecureNetworkServer::TSecureNetworkServer() (secnet.cpp:274)
==20983==    by 0x1554F248A: yacs::TServer::TServer(int, System::TStringBase<char> const&, System::TStringBase<char> const&, System::TStringBase<char> const&, System::TStringBase<char> const&, System::TStringBase<char> const&, System::TStringBase<char> const&, System::Diagnostics::ILogger*, System::TStringBase<char> const&, unsigned, System::TStringBase<char> const&, System::TStringBase<char> const&) (TServer.cpp:84)
==20983==    by 0x41DB7F: spawnServer() (yacsd.cpp:281)
==20983==    by 0x41F2C9: serve(System::TVarData const&) (yacsd.cpp:327)
==20983==    by 0x4200DC: main (yacsd.cpp:390)
==20983== 
==20983== Open file descriptor 2:
==20983==    <inherited from parent>
==20983== 
==20983== Open file descriptor 1:
==20983==    <inherited from parent>
==20983== 
==20983== Open file descriptor 0: /dev/pts/2
==20983==    <inherited from parent>
==20983== 
==20983== 
==20983== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 14 from 4)
==20983== 
==20983== 1 errors in context 1 of 1:
==20983== Invalid read of size 8
==20983==    at 0x155EC247D: System::TSharedCounter::release() (TSharedPtr.cpp:63)
==20983==    by 0x155EC26C3: System::TSharedCount::~TSharedCount() (TSharedPtr.cpp:101)
==20983==    by 0x1555273FC: System::TSharedPtr<System::TFunctorImpl<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TSharedPtr() (TSharedPtr.h:477)
==20983==    by 0x155527447: System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> >::~TFunctor() (TDynamicArray.cc:37)
==20983==    by 0x1555153F7: System::TArrayRep<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::destroy() (TDynamicArray.cc:37)
==20983==    by 0x1555153AF: System::TArrayRep<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::release() (TDynamicArray.cc:75)
==20983==    by 0x15552B3FF: System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TDynamicArray() (TDynamicArray.cc:194)
==20983==    by 0x155516120: void System::safeDelete<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >(System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*) (TSharedPtr.h:27)
==20983==    by 0x1555160F6: System::TSafeDeleter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::operator()(System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*) const (TSharedPtr.h:38)
==20983==    by 0x15552C026: System::TAdaptedSharedCounter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >*, System::TSafeDeleter<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > > >::dispose() (TSharedPtr.h:392)
==20983==    by 0x155EC2481: System::TSharedCounter::release() (TSharedPtr.cpp:63)
==20983==    by 0x155EC26C3: System::TSharedCount::~TSharedCount() (TSharedPtr.cpp:101)
==20983==    by 0x15551479C: System::TSharedPtr<System::TDynamicArray<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::~TSharedPtr() (TDictionary.cc:387)
==20983==    by 0x15551462F: System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::~TArrayList() (TDictionary.cc:387)
==20983==    by 0x1555147CB: System::TPair<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::~TPair() (TDictionary.cc:387)
==20983==    by 0x15552B19A: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::TNode::~TNode() (TDictionary.cc:68)
==20983==    by 0x1555103EA: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::TNode**) (TDictionary.cc:270)
==20983==    by 0x15550E5A8: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > >::TNode**, int const&) (TDictionary.cc:240)
==20983==    by 0x15550CA18: System::Collections::TDictionary<int, System::Collections::TArrayList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > > >::remove(int const&) (TDictionary.cc:423)
==20983==    by 0x15550A855: System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::remove(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (THook.cc:117)
==20983==    by 0x1554F7719: yacs::TServer::onRemoveCommunitySpawnHook(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TServer.cpp:196)
==20983==    by 0x1555187E0: System::TMemFunHandler<System::TFunctor<void, System::TTypeList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&, System::NullType> >, yacs::TServer*, void (yacs::TServer::*)(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&)>::operator()(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TFunctor.h:300)
==20983==    by 0x159170F61: System::TFunctor<void, System::TTypeList<System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&, System::NullType> >::operator()(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) const (TFunctor.cc:38)
==20983==    by 0x1591702E5: System::TEventManager<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> > >::remove(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TEventManager.cc:43)
==20983==    by 0x15916EDAE: System::TEventManager<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> > >::operator-=(System::TFunctor<System::THook<System::TTypeList<yacs::TCommunity*, System::NullType> >::TExitCode, System::TTypeList<yacs::TCommunity*, System::NullType> > const&) (TEventManager.cc:54)
==20983==    by 0x159166D02: chat::TChatModule::~TChatModule() (TChatModule.cpp:99)
==20983==    by 0x1591B7C3E: chat::finalizeModule() (mod_chat.cpp:166)
==20983==    by 0x1554FC46C: yacs::TServer::unloadModule(System::TStringBase<char> const&) (TServer.cpp:557)
==20983==    by 0x1554F6A61: yacs::TServer::~TServer() (TServer.cpp:162)
==20983==    by 0x421F3F: System::TAutoPtr<yacs::TServer>::~TAutoPtr() (TAutoPtr.h:92)
==20983==    by 0x41F304: serve(System::TVarData const&) (yacsd.cpp:333)
==20983==    by 0x4200DC: main (yacsd.cpp:390)
==20983==  Address 0x15959CE90 is not stack'd, malloc'd or (recently) free'd
--20983-- 
--20983-- supp:    3 index-not-intercepted-early-enough-HACK-1
--20983-- supp:    1 strlen-not-intercepted-early-enough-HACK-4
--20983-- supp:    1 strlen-not-intercepted-early-enough-HACK-3
--20983-- supp:    9 dl_relocate_object
==20983== 
==20983== IN SUMMARY: 1 errors from 1 contexts (suppressed: 14 from 4)
==20983== 
==20983== malloc/free: in use at exit: 791742 bytes in 14401 blocks.
==20983== malloc/free: 65332 allocs, 50931 frees, 5142149 bytes allocated.
==20983== 
==20983== searching for pointers to 14401 not-freed blocks.
==20983== checked 3394960 bytes.
==20983== 
==20983== LEAK SUMMARY:
==20983==    definitely lost: 1890 bytes in 24 blocks.
==20983==      possibly lost: 77496 bytes in 3228 blocks.
==20983==    still reachable: 712356 bytes in 11149 blocks.
==20983==         suppressed: 0 bytes in 0 blocks.
==20983== Use --leak-check=full to see details of leaked memory.
--20983--  memcheck: sanity checks: 4056 cheap, 163 expensive
--20983--  memcheck: auxmaps: 34 auxmap entries (2176k, 2M) in use
--20983--  memcheck: auxmaps: 2090540 searches, 2131090 comparisons
--20983--  memcheck: secondaries: 127 issued (8128k, 7M)
--20983--  memcheck: secondaries: 946 accessible and distinguished (60544k, 59M)
--20983--     tt/tc: 86982 tt lookups requiring 148370 probes
--20983--     tt/tc: 86982 fast-cache updates, 8 flushes
--20983-- translate: new        23572 (566070 -> 11091954; ratio 195:10) [0 scs]
--20983-- translate: dumped     0 (0 -> ??)
--20983-- translate: discarded  360 (8026 -> ??)
--20983-- scheduler: 202829734 jumps (bb entries).
--20983-- scheduler: 4056/199517 major/minor sched events.
--20983--    sanity: 4057 cheap, 163 expensive checks.
--20983--    exectx: 4999 lists, 28907 contexts (avg 5 per list)
--20983--    exectx: 116324 searches, 30852175 full compares (265226 per 1000)
--20983--    exectx: 0 cmp2, 70 cmp4, 0 cmpAll
