diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mir_app/src/mir_app.def | 2 | ||||
-rw-r--r-- | src/mir_app/src/mir_app64.def | 2 | ||||
-rw-r--r-- | src/mir_app/src/proto_interface.cpp | 6 | ||||
-rw-r--r-- | src/mir_core/src/db.cpp | 3 |
4 files changed, 8 insertions, 5 deletions
diff --git a/src/mir_app/src/mir_app.def b/src/mir_app/src/mir_app.def index c93fc79d87..a37fbe8acb 100644 --- a/src/mir_app/src/mir_app.def +++ b/src/mir_app/src/mir_app.def @@ -496,7 +496,7 @@ Proto_GetStatus @601 ?OnModulesLoaded@PROTO_INTERFACE@@UAEXXZ @607 NONAME
?OnShutdown@PROTO_INTERFACE@@UAEXXZ @608 NONAME
?GetStatus@Contact@@YGHI@Z @609 NONAME
-?OnContactDeleted@PROTO_INTERFACE@@UAEXI@Z @610 NONAME
+?OnContactDeleted@PROTO_INTERFACE@@UAE_NI@Z @610 NONAME
?OnBuildProtoMenu@PROTO_INTERFACE@@UAEXXZ @611 NONAME
?OnErase@PROTO_INTERFACE@@UAEXXZ @612 NONAME
?getMStringA@CMPluginBase@@QAE?AV?$CMStringT@DV?$ChTraitsCRT@D@@@@IPBD0@Z @613 NONAME
diff --git a/src/mir_app/src/mir_app64.def b/src/mir_app/src/mir_app64.def index 0284e7cbcd..374e1a3e7c 100644 --- a/src/mir_app/src/mir_app64.def +++ b/src/mir_app/src/mir_app64.def @@ -496,7 +496,7 @@ Proto_GetStatus @601 ?OnModulesLoaded@PROTO_INTERFACE@@UEAAXXZ @607 NONAME
?OnShutdown@PROTO_INTERFACE@@UEAAXXZ @608 NONAME
?GetStatus@Contact@@YAHI@Z @609 NONAME
-?OnContactDeleted@PROTO_INTERFACE@@UEAAXI@Z @610 NONAME
+?OnContactDeleted@PROTO_INTERFACE@@UEAA_NI@Z @610 NONAME
?OnBuildProtoMenu@PROTO_INTERFACE@@UEAAXXZ @611 NONAME
?OnErase@PROTO_INTERFACE@@UEAAXXZ @612 NONAME
?getMStringA@CMPluginBase@@QEAA?AV?$CMStringT@DV?$ChTraitsCRT@D@@@@IPEBD0@Z @613 NONAME
diff --git a/src/mir_app/src/proto_interface.cpp b/src/mir_app/src/proto_interface.cpp index 00d7fb2f26..3caf9971aa 100644 --- a/src/mir_app/src/proto_interface.cpp +++ b/src/mir_app/src/proto_interface.cpp @@ -72,8 +72,10 @@ void PROTO_INTERFACE::OnBuildProtoMenu() void PROTO_INTERFACE::OnContactAdded(MCONTACT)
{}
-void PROTO_INTERFACE::OnContactDeleted(MCONTACT)
-{}
+bool PROTO_INTERFACE::OnContactDeleted(MCONTACT)
+{
+ return true;
+}
MWindow PROTO_INTERFACE::OnCreateAccMgrUI(MWindow)
{
diff --git a/src/mir_core/src/db.cpp b/src/mir_core/src/db.cpp index 0dec7c5ee6..4765a79ad4 100644 --- a/src/mir_core/src/db.cpp +++ b/src/mir_core/src/db.cpp @@ -111,7 +111,8 @@ MIR_CORE_DLL(int) db_delete_contact(MCONTACT hContact, bool bFromProto) if (!bFromProto)
if (auto *ppro = Proto_GetInstance(hContact))
- ppro->OnContactDeleted(hContact);
+ if (!ppro->OnContactDeleted(hContact))
+ return 1;
Netlib_Logf(nullptr, "Contact deleted: %d", hContact);
return (g_pCurrDb) ? g_pCurrDb->DeleteContact(hContact) : 0;
|