diff options
author | Mikkel Krautz <mikkel@krautz.dk> | 2016-05-15 17:55:38 +0300 |
---|---|---|
committer | Mikkel Krautz <mikkel@krautz.dk> | 2016-06-24 01:03:11 +0300 |
commit | 3be686c7747f46178514c082125e2dc0ffc5422b (patch) | |
tree | fffdc704f18079324a8c25eefefc73710744be63 /src/murmur/MurmurGRPCImpl.cpp | |
parent | f03b74db2d09efdf934b7d13e9cf8be032c5ce74 (diff) |
Fix User->qmWhisperRedirect qrwlVoiceThread locking.
Diffstat (limited to 'src/murmur/MurmurGRPCImpl.cpp')
-rw-r--r-- | src/murmur/MurmurGRPCImpl.cpp | 12 |
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); |