Dart2 typesafe invocation of IsolateConfiguration callback (#15267)
diff --git a/packages/flutter/lib/src/foundation/isolates.dart b/packages/flutter/lib/src/foundation/isolates.dart
index 3cf9d7d..a7c988b 100644
--- a/packages/flutter/lib/src/foundation/isolates.dart
+++ b/packages/flutter/lib/src/foundation/isolates.dart
@@ -84,6 +84,8 @@
final SendPort resultPort;
final String debugLabel;
final int flowId;
+
+ R apply() => callback(message);
}
void _spawn<Q, R>(_IsolateConfiguration<Q, R> configuration) {
@@ -91,7 +93,7 @@
Timeline.timeSync(
'${configuration.debugLabel}',
() {
- result = configuration.callback(configuration.message);
+ result = configuration.apply();
},
flow: Flow.step(configuration.flowId),
);