From bf737d86dbb6a4091086e8488f397db9ac120eb3 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 23 Nov 2012 16:00:42 +0000 Subject: fix for dynamic CSList load/unload git-svn-id: http://svn.miranda-ng.org/main/trunk@2449 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/CSList/src/cslist.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/plugins/CSList/src/cslist.cpp b/plugins/CSList/src/cslist.cpp index 86100b2ee1..47abad2db2 100644 --- a/plugins/CSList/src/cslist.cpp +++ b/plugins/CSList/src/cslist.cpp @@ -91,13 +91,20 @@ static int OnInitOptions(WPARAM wparam, LPARAM lparam) odp.pszGroup = LPGEN("Status"); odp.flags = ODPF_BOLDGROUPS; Options_AddPage(wparam, &odp); - return FALSE; + return 0; } static int OnCreateMenuItems(WPARAM wparam, LPARAM lparam) { forAllProtocols(addProtoStatusMenuItem, 0); - return FALSE; + return 0; +} + +static int OnPreshutdown(WPARAM wparam, LPARAM lparam) +{ + for (int i=0; i < arWindows.getCount(); i++) + DestroyWindow(arWindows[i]->m_handle); + return 0; } extern "C" __declspec(dllexport) int Load() @@ -134,7 +141,9 @@ extern "C" __declspec(dllexport) int Load() HookEvent(ME_OPT_INITIALISE, OnInitOptions); HookEvent(ME_DB_CONTACT_SETTINGCHANGED, OnDbChanged); HookEvent(ME_CLIST_PREBUILDSTATUSMENU, OnCreateMenuItems); - return FALSE; + HookEvent(ME_SYSTEM_MODULESLOADED, OnCreateMenuItems); + HookEvent(ME_SYSTEM_PRESHUTDOWN, OnPreshutdown); + return 0; } // ====[ UNLOADER ]=========================================================== @@ -142,7 +151,7 @@ extern "C" __declspec(dllexport) int Load() extern "C" __declspec(dllexport) int Unload() { arWindows.destroy(); - return FALSE; + return 0; } // ====[ FUN ]================================================================ -- cgit v1.2.3