From 05b7974f9c3c5222a6ebc01ec4895081ef6459e2 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Sat, 27 Sep 2014 18:39:23 +0000 Subject: temp fix for creating profile git-svn-id: http://svn.miranda-ng.org/main/trunk@10615 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/Tox/src/tox_account.cpp | 10 ---------- protocols/Tox/src/tox_accounts.cpp | 3 ++- protocols/Tox/src/tox_proto.cpp | 3 ++- protocols/Tox/src/tox_utils.cpp | 8 ++++++-- 4 files changed, 10 insertions(+), 14 deletions(-) (limited to 'protocols') diff --git a/protocols/Tox/src/tox_account.cpp b/protocols/Tox/src/tox_account.cpp index bc9255ad36..8921a5c437 100644 --- a/protocols/Tox/src/tox_account.cpp +++ b/protocols/Tox/src/tox_account.cpp @@ -20,11 +20,6 @@ int CToxProto::OnAccountLoaded(WPARAM, LPARAM) void CToxProto::InitToxCore() { - if (ptrA(this->getStringA("ToxID")) == NULL) - { - return; - } - Tox_Options options = { 0 }; options.udp_disabled = getByte("DisableUDP", 0); options.ipv6enabled = !getByte("DisableIPv6", 0); @@ -86,11 +81,6 @@ void CToxProto::InitToxCore() void CToxProto::UninitToxCore() { - if (ptrA(this->getStringA("ToxID")) == NULL) - { - return; - } - SaveToxData(); tox_kill(tox); } diff --git a/protocols/Tox/src/tox_accounts.cpp b/protocols/Tox/src/tox_accounts.cpp index 95b7284e93..acab9db206 100644 --- a/protocols/Tox/src/tox_accounts.cpp +++ b/protocols/Tox/src/tox_accounts.cpp @@ -32,7 +32,8 @@ int CToxProto::OnAccountListChanged(WPARAM wParam, LPARAM lParam) switch (wParam) { case PRAC_ADDED: - UninitToxCore(); + if (this->getStringA("ToxID")) + UninitToxCore(); DialogBoxParam( g_hInstance, MAKEINTRESOURCE(IDD_PROFILE_MANAGER), diff --git a/protocols/Tox/src/tox_proto.cpp b/protocols/Tox/src/tox_proto.cpp index 3016a400ee..0d3ab920f6 100644 --- a/protocols/Tox/src/tox_proto.cpp +++ b/protocols/Tox/src/tox_proto.cpp @@ -5,7 +5,8 @@ PROTO(protoName, userName) { accountName = mir_tstrdup(userName); - InitToxCore(); + if (this->getStringA("ToxID")) + InitToxCore(); CreateProtoService(PS_CREATEACCMGRUI, &CToxProto::OnAccountManagerInit); diff --git a/protocols/Tox/src/tox_utils.cpp b/protocols/Tox/src/tox_utils.cpp index d294be81cd..854d59f40d 100644 --- a/protocols/Tox/src/tox_utils.cpp +++ b/protocols/Tox/src/tox_utils.cpp @@ -176,9 +176,13 @@ void CToxProto::SaveToxData() return; } - uint32_t size = tox_encrypted_size(tox); - uint8_t *data = (uint8_t*)mir_alloc(size); ptrT password(getTStringA("Password")); + uint32_t size; + if (password && _tcslen(password)) + size = tox_encrypted_size(tox); + else + size = tox_size(tox); + uint8_t *data = (uint8_t*)mir_alloc(size); if (password && _tcslen(password)) { char *password_utf8 = mir_utf8encodeW(password); -- cgit v1.2.3