8000 Fix getStats for darwin when trackId is NSNull. · myname-caoben/flutter-webrtc@5fa46a4 · GitHub
[go: up one dir, main page]

Skip to content

Commit 5fa46a4

Browse files
committed
Fix getStats for darwin when trackId is NSNull.
1 parent 9c5a106 commit 5fa46a4

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

common/darwin/Classes/FlutterWebRTCPlugin.m

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -351,27 +351,29 @@ - (void)handleMethodCall:(FlutterMethodCall*)call result:(FlutterResult) result
351351
RTCIceCandidate* candidate = [[RTCIceCandidate alloc] initWithSdp:sdp sdpMLineIndex:sdpMLineIndex sdpMid:sdpMid];
352352
RTCPeerConnection *peerConnection = self.peerConnections[peerConnectionId];
353353

354-
if(peerConnection)
355-
{
354+
if(peerConnection) {
356355
[self peerConnectionAddICECandidate:candidate peerConnection:peerConnection result:result];
357-
}else{
356+
} else {
358357
result([FlutterError errorWithCode:[NSString stringWithFormat:@"%@Failed",call.method]
359358
message:[NSString stringWithFormat:@"Error: peerConnection not found!"]
360359
details:nil]);
361360
}
362361
} else if ([@"getStats" isEqualToString:call.method]) {
363362
NSDictionary* argsMap = call.arguments;
364363
NSString* peerConnectionId = argsMap[@"peerConnectionId"];
365-
NSString* trackId = argsMap[@"trackId"];
364+
id trackId = argsMap[@"trackId"];
366365
RTCPeerConnection *peerConnection = self.peerConnections[peerConnectionId];
367366
if(peerConnection) {
368-
if(trackId != nil) {
367+
if(trackId != nil && trackId != [NSNull null]) {
369368
return [self peerConnectionGetStatsForTrackId:trackId peerConnection:peerConnection result:result];
370369
} else {
371370
return [self peerConnectionGetStats:peerConnection result:result];
372371
}
372+
} else {
373+
result([FlutterError errorWithCode:[NSString stringWithFormat:@"%@Failed",call.method]
374+
message:[NSString stringWithFormat:@"Error: peerConnection not found!"]
375+
details:nil]);
373376
}
374-
result(nil);
375377
} else if ([@"createDataChannel" isEqualToString:call.method]){
376378
NSDictionary* argsMap = call.arguments;
377379
NSString* peerConnectionId = argsMap[@"peerConnectionId"];

0 commit comments

Comments
 (0)
0