1.1 --- a/core/smn_usermsgs.cpp Fri Mar 16 22:50:27 2007 +0000
1.2 +++ b/core/smn_usermsgs.cpp Sat Mar 17 00:55:46 2007 +0000
1.3 @@ -34,6 +34,8 @@
1.4 public IHandleTypeDispatch,
1.5 public IPluginsListener
1.6 {
1.7 +public:
1.8 + ~UsrMessageNatives();
1.9 public: //SMGlobalClass, IHandleTypeDispatch, IPluginListener
1.10 void OnSourceModAllInitialized();
1.11 void OnSourceModShutdown();
1.12 @@ -47,6 +49,16 @@
1.13 CStack<MsgListenerWrapper *> m_FreeListeners;
1.14 };
1.15
1.16 +UsrMessageNatives::~UsrMessageNatives()
1.17 +{
1.18 + CStack<MsgListenerWrapper *>::iterator iter;
1.19 + for (iter=m_FreeListeners.begin(); iter!=m_FreeListeners.end(); iter++)
1.20 + {
1.21 + delete (*iter);
1.22 + }
1.23 + m_FreeListeners.popall();
1.24 +}
1.25 +
1.26 void UsrMessageNatives::OnSourceModAllInitialized()
1.27 {
1.28 HandleAccess sec;
1.29 @@ -70,7 +82,6 @@
1.30 g_HandleSys.RemoveType(g_WrBitBufType, g_pCoreIdent);
1.31 g_HandleSys.RemoveType(g_RdBitBufType, g_pCoreIdent);
1.32
1.33 - g_PluginSys.RemovePluginsListener(this);
1.34 g_WrBitBufType = 0;
1.35 g_RdBitBufType = 0;
1.36 }