Please sign in to comment.
Fix client freeze due to deadlock (#1167)
See issue for deadlock cause. Removed need for ClientUser::get call causing the c_qrwlUsers read lock in audio output thread by moving feature implementation into GUI thread analog to how application attenuation is handled. Now a global flag signals to the audio output thread if priority speaker should be triggered even though none of the outputs are priority speaker. Also fixed asymmetric behavior between local and remote priority speaker handling in the feature. Now also whisper and shouts trigger the local priority speaker feature. Minor refactoring in places that had to be touched to improve readability. Removed some now superfluous comments.
- Loading branch information...
Showing with 51 additions and 33 deletions.