Skip to content

Commit e120357

Browse files
pauldemarcoPaul DeMarco
authored and
Paul DeMarco
committed
Fix bug in scan.
1 parent 7692733 commit e120357

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

lib/src/flutter_blue.dart

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -84,17 +84,24 @@ class FlutterBlue {
8484
// Emit to isScanning
8585
_isScanning.add(true);
8686

87-
// Clear scan results list
88-
_scanResults.add(<ScanResult>[]);
89-
90-
await _channel.invokeMethod('startScan', settings.writeToBuffer());
91-
9287
final killStreams = <Stream>[];
9388
killStreams.add(_stopScanPill);
9489
if (timeout != null) {
9590
killStreams.add(Observable.timer(null, timeout));
9691
}
9792

93+
// Clear scan results list
94+
_scanResults.add(<ScanResult>[]);
95+
96+
try {
97+
await _channel.invokeMethod('startScan', settings.writeToBuffer());
98+
} catch(e) {
99+
print('Error starting scan.');
100+
_stopScanPill.add(null);
101+
_isScanning.add(false);
102+
throw e;
103+
}
104+
98105
yield* Observable(FlutterBlue.instance._methodStream
99106
.where((m) => m.method == "ScanResult")
100107
.map((m) => m.arguments))

0 commit comments

Comments
 (0)