mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00
Avoid NPE for flutter attach mDNS (#31926)
This commit is contained in:
parent
6a69f8c98c
commit
df669ab1ea
@ -216,7 +216,9 @@ class AttachCommand extends FlutterCommand {
|
||||
}
|
||||
} else if ((device is IOSDevice) || (device is IOSSimulator)) {
|
||||
final MDnsObservatoryDiscoveryResult result = await MDnsObservatoryDiscovery().query(applicationId: appId);
|
||||
observatoryUri = await _buildObservatoryUri(device, hostname, result.port, result.authCode);
|
||||
if (result != null) {
|
||||
observatoryUri = await _buildObservatoryUri(device, hostname, result.port, result.authCode);
|
||||
}
|
||||
}
|
||||
// If MDNS discovery fails or we're not on iOS, fallback to ProtocolDiscovery.
|
||||
if (observatoryUri == null) {
|
||||
|
@ -537,6 +537,17 @@ void main() {
|
||||
final int port = (await portDiscovery.query(applicationId: 'bar'))?.port;
|
||||
expect(port, 1234);
|
||||
});
|
||||
|
||||
testUsingContext('Query returns null', () async {
|
||||
final MDnsClient client = getMockClient(
|
||||
<PtrResourceRecord>[],
|
||||
<String, List<SrvResourceRecord>>{},
|
||||
);
|
||||
|
||||
final MDnsObservatoryDiscovery portDiscovery = MDnsObservatoryDiscovery(mdnsClient: client);
|
||||
final int port = (await portDiscovery.query(applicationId: 'bar'))?.port;
|
||||
expect(port, isNull);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user