handle parts in the bulk fix loop


Fixes: https://github.com/dart-lang/sdk/issues/43564

Change-Id: I1b8f0859f5e13f2fbab1724a78bd243f755b4ccf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/164680
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/analysis_server/lib/src/services/correction/bulk_fix_processor.dart b/pkg/analysis_server/lib/src/services/correction/bulk_fix_processor.dart
index 16528c5..715f3a9 100644
--- a/pkg/analysis_server/lib/src/services/correction/bulk_fix_processor.dart
+++ b/pkg/analysis_server/lib/src/services/correction/bulk_fix_processor.dart
@@ -63,6 +63,7 @@
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:analyzer/error/error.dart';
 import 'package:analyzer/src/error/codes.dart';
+import 'package:analyzer/src/generated/source.dart';
 import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
 
 /// A fix producer that produces changes to fix multiple diagnostics.
@@ -257,8 +258,11 @@
   Future<ChangeBuilder> fixErrorsInLibraries(List<String> libraryPaths) async {
     for (var path in libraryPaths) {
       var session = workspace.getSession(path);
-      var libraryResult = await session.getResolvedLibrary(path);
-      await _fixErrorsInLibrary(libraryResult);
+      var kind = await session.getSourceKind(path);
+      if (kind == SourceKind.LIBRARY) {
+        var libraryResult = await session.getResolvedLibrary(path);
+        await _fixErrorsInLibrary(libraryResult);
+      }
     }
     return builder;
   }