diff --git a/src/manager.cpp b/src/manager.cpp index 3dbf5a87d5a9275010a4b4508822ce0911fc9fc2..1fd25053615f0a371ae46265a150d63ddc0fdedd 100644 --- a/src/manager.cpp +++ b/src/manager.cpp @@ -1905,7 +1905,7 @@ Manager::incomingCall(Call& call, const std::string& accountId) auto currentCall = getCurrentCall(); if (account->isRendezVous()) { - runOnMainThread([this, callID] { + dht::ThreadPool::io().run([this, callID] { answerCall(callID); auto call = getCallFromCallID(callID); auto accountId = call->getAccountId(); @@ -1936,7 +1936,7 @@ Manager::incomingCall(Call& call, const std::string& accountId) emitSignal<DRing::CallSignal::ConferenceCreated>(conf->getConfID()); }); } else if (pimpl_->autoAnswer_) { - runOnMainThread([this, callID] { answerCall(callID); }); + dht::ThreadPool::io().run([this, callID] { answerCall(callID); }); } else if (currentCall) { // Test if already calling this person if (currentCall->getAccountId() == accountId