From 34fd1a02e3451e1edb9f416848077c4aeddd49ea Mon Sep 17 00:00:00 2001 From: cnderrauber Date: Thu, 3 Nov 2022 15:30:04 +0800 Subject: [PATCH] revert canclose method of red receivers (#1142) --- pkg/sfu/redprimaryreceiver.go | 4 ++++ pkg/sfu/redreceiver.go | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/pkg/sfu/redprimaryreceiver.go b/pkg/sfu/redprimaryreceiver.go index 9df8d26ea..8b889f88c 100644 --- a/pkg/sfu/redprimaryreceiver.go +++ b/pkg/sfu/redprimaryreceiver.go @@ -88,6 +88,10 @@ func (r *RedPrimaryReceiver) DeleteDownTrack(subscriberID livekit.ParticipantID) r.downTrackSpreader.Free(subscriberID) } +func (r *RedPrimaryReceiver) CanClose() bool { + return r.closed.Load() || r.downTrackSpreader.DownTrackCount() == 0 +} + func (r *RedPrimaryReceiver) Close() { r.closed.Store(true) for _, dt := range r.downTrackSpreader.ResetAndGetDownTracks() { diff --git a/pkg/sfu/redreceiver.go b/pkg/sfu/redreceiver.go index 7cc8ad08a..bc89de96d 100644 --- a/pkg/sfu/redreceiver.go +++ b/pkg/sfu/redreceiver.go @@ -85,6 +85,10 @@ func (r *RedReceiver) DeleteDownTrack(subscriberID livekit.ParticipantID) { r.downTrackSpreader.Free(subscriberID) } +func (r *RedReceiver) CanClose() bool { + return r.closed.Load() || r.downTrackSpreader.DownTrackCount() == 0 +} + func (r *RedReceiver) Close() { r.closed.Store(true) for _, dt := range r.downTrackSpreader.ResetAndGetDownTracks() {