From bf516b542340d1bb2747a3ae35599825be30b630 Mon Sep 17 00:00:00 2001 From: Simon Eisenmann Date: Thu, 2 Apr 2015 17:47:05 +0200 Subject: [PATCH] Make sure to send session close messages to subscriptions too to notify both ways. --- src/app/spreed-webrtc-server/session.go | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/app/spreed-webrtc-server/session.go b/src/app/spreed-webrtc-server/session.go index a60a9347..c226e6c0 100644 --- a/src/app/spreed-webrtc-server/session.go +++ b/src/app/spreed-webrtc-server/session.go @@ -86,16 +86,13 @@ func (s *Session) authenticated() (authenticated bool) { } func (s *Session) Subscribe(session *Session) { - s.mutex.Lock() s.subscriptions[session.Id] = session s.mutex.Unlock() session.AddSubscriber(s) - } func (s *Session) Unsubscribe(id string) { - s.mutex.Lock() if session, ok := s.subscriptions[id]; ok { delete(s.subscriptions, id) @@ -104,7 +101,6 @@ func (s *Session) Unsubscribe(id string) { } else { s.mutex.Unlock() } - } func (s *Session) AddSubscriber(session *Session) { @@ -236,6 +232,7 @@ func (s *Session) Close() { for _, session := range s.subscriptions { session.RemoveSubscriber(s.Id) + s.Unicaster.Unicast(session.Id, outgoing) } s.SessionManager.DestroySession(s.Id, s.userid)