From a1b54aadf426b4ce2ce3c900a889f53f1eec6bce Mon Sep 17 00:00:00 2001 From: George Hazan Date: Thu, 28 Jun 2012 15:05:21 +0000 Subject: patch for crash on exit git-svn-id: http://svn.miranda-ng.org/main/trunk@668 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/Db3x_mmap/dbsettings.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'plugins/Db3x_mmap/dbsettings.cpp') diff --git a/plugins/Db3x_mmap/dbsettings.cpp b/plugins/Db3x_mmap/dbsettings.cpp index 7f7687ab4c..c569357567 100644 --- a/plugins/Db3x_mmap/dbsettings.cpp +++ b/plugins/Db3x_mmap/dbsettings.cpp @@ -975,6 +975,13 @@ static int stringCompare2( char* p1, char* p2 ) return strcmp( p1, p2); } +static int OnPreShutdown(WPARAM, LPARAM) +{ + DestroyHookableEvent(hSettingChangeEvent); + hSettingChangeEvent = 0; + return 0; +} + int InitSettings(void) { CreateServiceFunction(MS_DB_CONTACT_GETSETTING,GetContactSetting); @@ -987,7 +994,8 @@ int InitSettings(void) CreateServiceFunction(MS_DB_SETSETTINGRESIDENT,SetSettingResident); CreateServiceFunction("DB/ResidentSettings/Enum",EnumResidentSettings); - hSettingChangeEvent=CreateHookableEvent(ME_DB_CONTACT_SETTINGCHANGED); + hSettingChangeEvent = CreateHookableEvent(ME_DB_CONTACT_SETTINGCHANGED); + HookEvent(ME_SYSTEM_PRESHUTDOWN, OnPreShutdown); hCacheHeap = HeapCreate(0, 0, 0); lSettings.sortFunc = (FSortFunc)stringCompare; -- cgit v1.2.3