diff options
Diffstat (limited to 'protocols')
-rw-r--r-- | protocols/Tox/src/tox_accounts.cpp | 19 | ||||
-rw-r--r-- | protocols/Tox/src/tox_proto.cpp | 6 |
2 files changed, 13 insertions, 12 deletions
diff --git a/protocols/Tox/src/tox_accounts.cpp b/protocols/Tox/src/tox_accounts.cpp index 2d02f68c4b..ff40c4bb2e 100644 --- a/protocols/Tox/src/tox_accounts.cpp +++ b/protocols/Tox/src/tox_accounts.cpp @@ -1,18 +1,21 @@ #include "stdafx.h"
-int CToxProto::OnAccountRenamed(WPARAM, LPARAM)
+int CToxProto::OnAccountRenamed(WPARAM wParam, LPARAM lParam)
{
- mir_cslock lock(m_profileLock);
+ PROTOACCOUNT *pa = (PROTOACCOUNT*)lParam;
+ if (wParam == PRAC_CHANGED && pa->ppro == this) {
+ mir_cslock lock(m_profileLock);
- ptrW newPath(GetToxProfilePath());
- wchar_t oldPath[MAX_PATH];
- mir_snwprintf(oldPath, MAX_PATH, L"%s\\%s.tox", VARSW(L"%miranda_userdata%"), m_accountName);
- _wrename(oldPath, newPath);
- m_accountName = mir_wstrdup(m_tszUserName);
+ ptrW newPath(GetToxProfilePath());
+ wchar_t oldPath[MAX_PATH];
+ mir_snwprintf(oldPath, MAX_PATH, L"%s\\%s.tox", VARSW(L"%miranda_userdata%"), m_accountName);
+ _wrename(oldPath, newPath);
+ m_accountName = mir_wstrdup(m_tszUserName);
+ }
return 0;
}
INT_PTR CToxProto::OnAccountManagerInit(WPARAM, LPARAM lParam)
{
return (INT_PTR)(CToxOptionsMain::CreateAccountManagerPage(this, (HWND)lParam))->GetHwnd();
-}
\ No newline at end of file +}
diff --git a/protocols/Tox/src/tox_proto.cpp b/protocols/Tox/src/tox_proto.cpp index 004211284f..f893e881fe 100644 --- a/protocols/Tox/src/tox_proto.cpp +++ b/protocols/Tox/src/tox_proto.cpp @@ -34,6 +34,7 @@ CToxProto::CToxProto(const char* protoName, const wchar_t* userName) CreateServiceFunction(MODULE "/GetEventIcon", &CToxProto::EventGetIcon);
HookProtoEvent(ME_CLIST_PREBUILDCONTACTMENU, &CToxProto::OnPrebuildContactMenu);
+ HookProtoEvent(ME_PROTO_ACCLISTCHANGED, &CToxProto::OnAccountRenamed);
hTerminateEvent = CreateEvent(nullptr, FALSE, FALSE, nullptr);
}
@@ -224,12 +225,9 @@ int CToxProto::UserIsTyping(MCONTACT hContact, int type) return OnUserIsTyping(hContact, type);
}
-int CToxProto::OnEvent(PROTOEVENTTYPE iEventType, WPARAM wParam, LPARAM lParam)
+int CToxProto::OnEvent(PROTOEVENTTYPE iEventType, WPARAM, LPARAM)
{
switch (iEventType) {
- case EV_PROTO_ONRENAME:
- return OnAccountRenamed(wParam, lParam);
-
case EV_PROTO_ONMENU:
return OnInitStatusMenu();
|