mirror of
https://github.com/livekit/livekit.git
synced 2026-05-25 22:55:04 +00:00
177061712c
* Do not hold lock while invoking resolver. Resolver is in room and it will grab its lock. It is called from partcipant when checking permissions. Permissions processing uses the participant lock. So, not a good idea to call a room function with participant lock held. Avoid that. Also, use a full lock in the add/remove subscription path. This is to ensure that permissions path and subscription path (like subscribing to new participant's tracks) do not race. As subscriptions are queued now on the subscriber side, this should be fine. * Revoke path resolution in ops queue goroutine * fix test