diff --git a/src/call/call.cpp b/src/call/call.cpp index 9cd36d9ed..797eee31a 100644 --- a/src/call/call.cpp +++ b/src/call/call.cpp @@ -285,6 +285,21 @@ void CallPrivate::onCallSessionStartReferred (const shared_ptr &ses void CallPrivate::onCallSessionStateChanged (const shared_ptr &session, CallSession::State state, const string &message) { L_Q(); + switch(state){ + case CallSession::State::OutgoingInit: + case CallSession::State::IncomingReceived: + getPlatformHelpers(q->getCore()->getCCore())->acquireWifiLock(); + getPlatformHelpers(q->getCore()->getCCore())->acquireMcastLock(); + getPlatformHelpers(q->getCore()->getCCore())->acquireCpuLock(); + break; + case CallSession::State::Released: + getPlatformHelpers(q->getCore()->getCCore())->releaseWifiLock(); + getPlatformHelpers(q->getCore()->getCCore())->releaseMcastLock(); + getPlatformHelpers(q->getCore()->getCCore())->releaseCpuLock(); + break; + default: + break; + } linphone_call_notify_state_changed(L_GET_C_BACK_PTR(q), static_cast(state), message.c_str()); } diff --git a/src/conference/session/call-session.cpp b/src/conference/session/call-session.cpp index 04fb89a3f..035f66841 100644 --- a/src/conference/session/call-session.cpp +++ b/src/conference/session/call-session.cpp @@ -86,12 +86,6 @@ void CallSessionPrivate::setState (CallSession::State newState, const string &me } switch (newState) { - case CallSession::State::OutgoingInit: - case CallSession::State::IncomingReceived: - getPlatformHelpers(q->getCore()->getCCore())->acquireWifiLock(); - getPlatformHelpers(q->getCore()->getCCore())->acquireMcastLock(); - getPlatformHelpers(q->getCore()->getCCore())->acquireCpuLock(); - break; case CallSession::State::End: case CallSession::State::Error: switch (linphone_error_info_get_reason(q->getErrorInfo())) { @@ -129,11 +123,6 @@ void CallSessionPrivate::setState (CallSession::State newState, const string &me log->status = LinphoneCallSuccess; log->connected_date_time = ms_time(nullptr); break; - case CallSession::State::Released: - getPlatformHelpers(q->getCore()->getCCore())->releaseWifiLock(); - getPlatformHelpers(q->getCore()->getCCore())->releaseMcastLock(); - getPlatformHelpers(q->getCore()->getCCore())->releaseCpuLock(); - break; default: break; }