Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mumble-voip/mumble.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikkel Krautz <mikkel@krautz.dk>2016-05-15 17:55:38 +0300
committerMikkel Krautz <mikkel@krautz.dk>2016-06-24 01:03:11 +0300
commit3be686c7747f46178514c082125e2dc0ffc5422b (patch)
treefffdc704f18079324a8c25eefefc73710744be63 /src/murmur/MurmurGRPCImpl.cpp
parentf03b74db2d09efdf934b7d13e9cf8be032c5ce74 (diff)
Fix User->qmWhisperRedirect qrwlVoiceThread locking.
Diffstat (limited to 'src/murmur/MurmurGRPCImpl.cpp')
-rw-r--r--src/murmur/MurmurGRPCImpl.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/murmur/MurmurGRPCImpl.cpp b/src/murmur/MurmurGRPCImpl.cpp
index c3bc2c230..75e0d1bc8 100644
--- a/src/murmur/MurmurGRPCImpl.cpp
+++ b/src/murmur/MurmurGRPCImpl.cpp
@@ -2123,7 +2123,11 @@ void V1_RedirectWhisperGroupAdd::impl(bool) {
QString qssource = u8(request.source().name());
QString qstarget = u8(request.target().name());
- user->qmWhisperRedirect.insert(qssource, qstarget);
+
+ {
+ QWriteLocker wl(&server->qrwlVoiceThread);
+ user->qmWhisperRedirect.insert(qssource, qstarget);
+ }
server->clearACLCache(user);
@@ -2139,7 +2143,11 @@ void V1_RedirectWhisperGroupRemove::impl(bool) {
}
QString qssource = u8(request.source().name());
- user->qmWhisperRedirect.remove(qssource);
+
+ {
+ QWriteLocker wl(&server->qrwlVoiceThread);
+ user->qmWhisperRedirect.remove(qssource);
+ }
server->clearACLCache(user);