summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2017-03-23 20:40:45 +0300
committerGeorge Hazan <ghazan@miranda.im>2017-03-23 20:40:45 +0300
commitdeca42d417dbe5b143c046c6bad8a7ba92fb2e01 (patch)
tree87d77a49345450d9b4bd1c11badd562df9faa329
parentee04e9de4bd7c4858de7716868cd6a1aad93b824 (diff)
these windows should be manually unsubclassed before exit
-rw-r--r--include/m_chat_int.h1
-rw-r--r--libs/win32/mir_app.libbin115580 -> 115866 bytes
-rw-r--r--libs/win64/mir_app.libbin111196 -> 111486 bytes
-rw-r--r--src/mir_app/src/mir_app.def1
-rw-r--r--src/mir_app/src/mir_app64.def1
-rw-r--r--src/mir_app/src/srmm_base.cpp7
6 files changed, 10 insertions, 0 deletions
diff --git a/include/m_chat_int.h b/include/m_chat_int.h
index 2f2f25d039..ce66e3387a 100644
--- a/include/m_chat_int.h
+++ b/include/m_chat_int.h
@@ -400,6 +400,7 @@ protected:
CSrmmBaseDialog(HINSTANCE hInst, int idDialog, SESSION_INFO *si = nullptr);
virtual void OnInitDialog() override;
+ virtual void OnClose() override;
virtual INT_PTR DlgProc(UINT msg, WPARAM wParam, LPARAM lParam) override;
void DoEventHook(int iType, const USERINFO *pUser, const wchar_t *pszText, INT_PTR dwItem);
diff --git a/libs/win32/mir_app.lib b/libs/win32/mir_app.lib
index 438911e680..e756d4df48 100644
--- a/libs/win32/mir_app.lib
+++ b/libs/win32/mir_app.lib
Binary files differ
diff --git a/libs/win64/mir_app.lib b/libs/win64/mir_app.lib
index 1cc3c53c4b..c11668f931 100644
--- a/libs/win64/mir_app.lib
+++ b/libs/win64/mir_app.lib
Binary files differ
diff --git a/src/mir_app/src/mir_app.def b/src/mir_app/src/mir_app.def
index d92766b9dd..ad0242556b 100644
--- a/src/mir_app/src/mir_app.def
+++ b/src/mir_app/src/mir_app.def
@@ -436,3 +436,4 @@ Chat_UpdateOptions @418 NONAME
?WndProc_Message@CSrmmBaseDialog@@UAEJIIJ@Z @438 NONAME
?WndProc_Nicklist@CSrmmBaseDialog@@UAEJIIJ@Z @439 NONAME
?onDblClick_List@CSrmmBaseDialog@@IAEXPAVCCtrlListBox@@@Z @440 NONAME
+?OnClose@CSrmmBaseDialog@@MAEXXZ @441 NONAME
diff --git a/src/mir_app/src/mir_app64.def b/src/mir_app/src/mir_app64.def
index e7152de5cb..c16ce177a3 100644
--- a/src/mir_app/src/mir_app64.def
+++ b/src/mir_app/src/mir_app64.def
@@ -436,3 +436,4 @@ Chat_UpdateOptions @418 NONAME
?WndProc_Message@CSrmmBaseDialog@@UEAA_JI_K_J@Z @438 NONAME
?WndProc_Nicklist@CSrmmBaseDialog@@UEAA_JI_K_J@Z @439 NONAME
?onDblClick_List@CSrmmBaseDialog@@IEAAXPEAVCCtrlListBox@@@Z @440 NONAME
+?OnClose@CSrmmBaseDialog@@MEAAXXZ @441 NONAME
diff --git a/src/mir_app/src/srmm_base.cpp b/src/mir_app/src/srmm_base.cpp
index f9d68536e0..8066b99851 100644
--- a/src/mir_app/src/srmm_base.cpp
+++ b/src/mir_app/src/srmm_base.cpp
@@ -192,6 +192,13 @@ void CSrmmBaseDialog::OnInitDialog()
LoadSettings();
}
+void CSrmmBaseDialog::OnClose()
+{
+ mir_unsubclassWindow(m_pLog->GetHwnd(), stubLogProc);
+ mir_unsubclassWindow(m_pEntry->GetHwnd(), stubMessageProc);
+ mir_unsubclassWindow(m_nickList.GetHwnd(), stubNicklistProc);
+}
+
/////////////////////////////////////////////////////////////////////////////////////////
INT_PTR CSrmmBaseDialog::DlgProc(UINT msg, WPARAM wParam, LPARAM lParam)