From 9725feacf296741ba7c3dfcd4df81e86359f72de Mon Sep 17 00:00:00 2001 From: Maxim Mamontov Date: Sat, 28 May 2011 17:32:06 +0300 Subject: [PATCH] Replace fake disconnects with real and fix some errors --- projects/stargazer/user_impl.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/projects/stargazer/user_impl.cpp b/projects/stargazer/user_impl.cpp index 2b64ccc7..e8d326d2 100644 --- a/projects/stargazer/user_impl.cpp +++ b/projects/stargazer/user_impl.cpp @@ -1424,10 +1424,12 @@ if (newPassive && !oldPassive && user->tariff != NULL) void CHG_TARIFF_NOTIFIER::Notify(const string &, const string & newTariff) { if (user->settings->GetReconnectOnTariffChange() && user->connected) - user->Disconnect(true, "Change tariff"); + user->Disconnect(false, "Change tariff"); user->tariff = user->tariffs->FindByName(newTariff); -if (user->settings->GetReconnectOnTariffChange() && user->IsInetable()) - user->Connect(true); +if (user->settings->GetReconnectOnTariffChange() && + !user->authorizedBy.empty() && + user->IsInetable()) + user->Connect(false); } //----------------------------------------------------------------------------- void CHG_CASH_NOTIFIER::Notify(const double & oldCash, const double & newCash) @@ -1440,8 +1442,8 @@ void CHG_IPS_NOTIFIER::Notify(const USER_IPS & from, const USER_IPS & to) { printfd(__FILE__, "Change IP from '%s' to '%s'\n", from.GetIpStr().c_str(), to.GetIpStr().c_str()); if (user->connected) - user->Disconnect(true, "Change IP"); - if (user->IsInetable()) - user->Connect(true); + user->Disconnect(false, "Change IP"); + if (!user->authorizedBy.empty() && user->IsInetable()) + user->Connect(false); } //----------------------------------------------------------------------------- -- 2.44.2