fix: Do not operate on inactive tracks. (#277)

This commit is contained in:
CloudWebRTC
2023-05-09 07:22:29 +08:00
committed by GitHub
parent 1829cb18bd
commit bf07a91c98
+6 -2
View File
@@ -118,7 +118,9 @@ abstract class Track extends DisposableChangeNotifier
Future<void> enable() async { Future<void> enable() async {
logger.fine('$objectId.enable() enabling ${mediaStreamTrack.objectId}...'); logger.fine('$objectId.enable() enabling ${mediaStreamTrack.objectId}...');
try { try {
mediaStreamTrack.enabled = true; if (_active) {
mediaStreamTrack.enabled = true;
}
} catch (_) { } catch (_) {
logger.warning( logger.warning(
'[$objectId] set rtc.mediaStreamTrack.enabled did throw ${_}'); '[$objectId] set rtc.mediaStreamTrack.enabled did throw ${_}');
@@ -129,7 +131,9 @@ abstract class Track extends DisposableChangeNotifier
logger logger
.fine('$objectId.disable() disabling ${mediaStreamTrack.objectId}...'); .fine('$objectId.disable() disabling ${mediaStreamTrack.objectId}...');
try { try {
mediaStreamTrack.enabled = false; if (_active) {
mediaStreamTrack.enabled = false;
}
} catch (_) { } catch (_) {
logger.warning( logger.warning(
'[$objectId] set rtc.mediaStreamTrack.enabled did throw ${_}'); '[$objectId] set rtc.mediaStreamTrack.enabled did throw ${_}');