Skip to content

Commit 4fd6e4b

Browse files
committed
fix: fixed dict and array enumeration for clone method
1 parent 3bab881 commit 4fd6e4b

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

ios/RCTWebRTC/WebRTCModule+RTCMediaStream.m

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -519,9 +519,10 @@ - (void)removeLocalVideoTrackDimensionDetection:(RTCVideoTrack *)videoTrack {
519519
RTCAudioTrack *audioTrack = [self.peerConnectionFactory audioTrackWithTrackId:trackUUID];
520520
audioTrack.isEnabled = originalTrack.isEnabled;
521521
[self.localTracks setObject:audioTrack forKey:trackUUID];
522-
for (NSString* streamId in self.localStreams) {
522+
for (NSString* streamId in [self.localStreams allKeys]) {
523523
RTCMediaStream* stream = [self.localStreams objectForKey:streamId];
524-
for (RTCAudioTrack* track in stream.audioTracks) {
524+
if (stream == nil) continue;
525+
for (RTCAudioTrack* track in [stream.audioTracks copy]) {
525526
if ([trackID isEqualToString:track.trackId]) {
526527
[stream addAudioTrack:audioTrack];
527528
}
@@ -537,9 +538,10 @@ - (void)removeLocalVideoTrackDimensionDetection:(RTCVideoTrack *)videoTrack {
537538
[self addLocalVideoTrackDimensionDetection:videoTrack];
538539

539540
[self.localTracks setObject:videoTrack forKey:trackUUID];
540-
for (NSString* streamId in self.localStreams) {
541+
for (NSString* streamId in [self.localStreams allKeys]) {
541542
RTCMediaStream* stream = [self.localStreams objectForKey:streamId];
542-
for (RTCVideoTrack* track in stream.videoTracks) {
543+
if (stream == nil) continue;
544+
for (RTCVideoTrack* track in [stream.videoTracks copy]) {
543545
if ([trackID isEqualToString:track.trackId]) {
544546
[stream addVideoTrack:videoTrack];
545547
}

0 commit comments

Comments
 (0)