Fixes future warning for `await`ing `Future` returns in `async` bodies inside `try` blocks (#9664)
* fixes future warning for `await`ing `Future` returns in `async` bodies inside `try` blocks
* fixes new diagnostic
diff --git a/packages/devtools_app_shared/lib/src/service/eval_on_dart_library.dart b/packages/devtools_app_shared/lib/src/service/eval_on_dart_library.dart
index 3022458..bde16b1 100644
--- a/packages/devtools_app_shared/lib/src/service/eval_on_dart_library.dart
+++ b/packages/devtools_app_shared/lib/src/service/eval_on_dart_library.dart
@@ -211,7 +211,7 @@
if (result is ErrorRef) {
throw result;
}
- return result as FutureOr<InstanceRef?>;
+ return await (result as FutureOr<InstanceRef?>);
} catch (e, stack) {
if (shouldLogError) {
_handleError('$e - $expression', stack);
@@ -242,7 +242,7 @@
if (result is ErrorRef) {
throw result;
}
- return result as FutureOr<InstanceRef?>;
+ return await (result as FutureOr<InstanceRef?>);
} catch (e, stack) {
if (shouldLogError) {
_handleError('$e - $name', stack);
diff --git a/packages/devtools_shared/test/helpers/helpers.dart b/packages/devtools_shared/test/helpers/helpers.dart
index e204331..523795b 100644
--- a/packages/devtools_shared/test/helpers/helpers.dart
+++ b/packages/devtools_shared/test/helpers/helpers.dart
@@ -55,7 +55,7 @@
}
});
- return completer.future
+ return await completer.future
.timeout(dtdConnectTimeout, onTimeout: onFailure)
.then((value) async {
await dtdStoutSubscription?.cancel();