Commit 69ffe0b2 authored by Adrien Béraud's avatar Adrien Béraud Committed by Sébastien Blin
Browse files

jamiaccount: fix deadlock during device revocation

Change-Id: I8ef7df59cd972868fda4e95dc0cc36ba123ffa44
parent 1629fb28
...@@ -1146,7 +1146,7 @@ JamiAccount::revokeDevice(const std::string& password, const std::string& device ...@@ -1146,7 +1146,7 @@ JamiAccount::revokeDevice(const std::string& password, const std::string& device
emitSignal<DRing::ConfigurationSignal::DeviceRevocationEnded>(getAccountID(), device, 2); emitSignal<DRing::ConfigurationSignal::DeviceRevocationEnded>(getAccountID(), device, 2);
return; return;
} }
std::lock_guard<std::mutex> lock(deviceListMutex_); std::unique_lock<std::mutex> lock(deviceListMutex_);
foundAccountDevice(crt); foundAccountDevice(crt);
AccountArchive a; AccountArchive a;
try { try {
...@@ -1168,6 +1168,7 @@ JamiAccount::revokeDevice(const std::string& password, const std::string& device ...@@ -1168,6 +1168,7 @@ JamiAccount::revokeDevice(const std::string& password, const std::string& device
saveKnownDevices(); saveKnownDevices();
emitSignal<DRing::ConfigurationSignal::DeviceRevocationEnded>(getAccountID(), device, 0); emitSignal<DRing::ConfigurationSignal::DeviceRevocationEnded>(getAccountID(), device, 0);
emitSignal<DRing::ConfigurationSignal::KnownDevicesChanged>(getAccountID(), getKnownDevices()); emitSignal<DRing::ConfigurationSignal::KnownDevicesChanged>(getAccountID(), getKnownDevices());
lock.unlock();
syncDevices(); syncDevices();
}); });
return true; return true;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment