| Index: pkg/analyzer/lib/src/task/dart_work_manager.dart
|
| diff --git a/pkg/analyzer/lib/src/task/dart_work_manager.dart b/pkg/analyzer/lib/src/task/dart_work_manager.dart
|
| index 7114053c19154f602d072ceb22e691bc2a3605bb..6f08af207572218dae621f6af1f2bf61e78a48ee 100644
|
| --- a/pkg/analyzer/lib/src/task/dart_work_manager.dart
|
| +++ b/pkg/analyzer/lib/src/task/dart_work_manager.dart
|
| @@ -265,6 +265,19 @@ class DartWorkManager implements WorkManager {
|
| void resultsComputed(
|
| AnalysisTarget target, Map<ResultDescriptor, dynamic> outputs) {
|
| bool isDartSource = _isDartSource(target);
|
| + // Route SDK outputs to the SDK WorkManager.
|
| + if (isDartSource && target.source.isInSystemLibrary) {
|
| + SourceFactory sourceFactory = context.sourceFactory;
|
| + InternalAnalysisContext sdkContext = sourceFactory.dartSdk.context;
|
| + if (sdkContext != context) {
|
| + for (WorkManager sdkWorkManager in sdkContext.workManagers) {
|
| + if (sdkWorkManager is DartWorkManager) {
|
| + sdkWorkManager.resultsComputed(target, outputs);
|
| + return;
|
| + }
|
| + }
|
| + }
|
| + }
|
| // Organize sources.
|
| bool isDartLibrarySource = false;
|
| if (isDartSource) {
|
|
|