From bf07a91c985addb62a1c080838d6fe6f7fbe09c8 Mon Sep 17 00:00:00 2001 From: CloudWebRTC Date: Tue, 9 May 2023 07:22:29 +0800 Subject: [PATCH] fix: Do not operate on inactive tracks. (#277) --- lib/src/track/track.dart | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/src/track/track.dart b/lib/src/track/track.dart index 0e66d9b..5247720 100644 --- a/lib/src/track/track.dart +++ b/lib/src/track/track.dart @@ -118,7 +118,9 @@ abstract class Track extends DisposableChangeNotifier Future enable() async { logger.fine('$objectId.enable() enabling ${mediaStreamTrack.objectId}...'); try { - mediaStreamTrack.enabled = true; + if (_active) { + mediaStreamTrack.enabled = true; + } } catch (_) { logger.warning( '[$objectId] set rtc.mediaStreamTrack.enabled did throw ${_}'); @@ -129,7 +131,9 @@ abstract class Track extends DisposableChangeNotifier logger .fine('$objectId.disable() disabling ${mediaStreamTrack.objectId}...'); try { - mediaStreamTrack.enabled = false; + if (_active) { + mediaStreamTrack.enabled = false; + } } catch (_) { logger.warning( '[$objectId] set rtc.mediaStreamTrack.enabled did throw ${_}');