diff --git a/pkgs/source_maps/lib/parser.dart b/pkgs/source_maps/lib/parser.dart
index 124ef6d..e3044aa 100644
--- a/pkgs/source_maps/lib/parser.dart
+++ b/pkgs/source_maps/lib/parser.dart
@@ -341,7 +341,7 @@
   SingleMapping.fromJson(Map map, {mapUrl})
       : targetUrl = map['file'],
         urls = List<String>.from(map['sources']),
-        names = List<String>.from(map['names']),
+        names = List<String>.from(map['names'] ?? []),
         files = List(map['sources'].length),
         sourceRoot = map['sourceRoot'],
         lines = <TargetLineEntry>[],
diff --git a/pkgs/source_maps/test/parser_test.dart b/pkgs/source_maps/test/parser_test.dart
index 275efd3..45ac52d 100644
--- a/pkgs/source_maps/test/parser_test.dart
+++ b/pkgs/source_maps/test/parser_test.dart
@@ -28,6 +28,14 @@
   'file': 'output.dart'
 };
 
+const Map<String, dynamic> MAP_WITH_SOURCE_LOCATION_AND_MISSING_NAMES = {
+  'version': 3,
+  'sourceRoot': '',
+  'sources': ['input.dart'],
+  'mappings': 'AAAA',
+  'file': 'output.dart'
+};
+
 const Map<String, dynamic> MAP_WITH_SOURCE_LOCATION_AND_NAME = {
   'version': 3,
   'sourceRoot': '',
@@ -121,6 +129,20 @@
     expect(entry.sourceNameId, null);
   });
 
+  test('parse with source location and missing names entry', () {
+    SingleMapping map =
+        parse(jsonEncode(MAP_WITH_SOURCE_LOCATION_AND_MISSING_NAMES));
+    expect(map.lines.length, 1);
+    expect(map.lines.first.entries.length, 1);
+    var entry = map.lines.first.entries.first;
+
+    expect(entry.column, 0);
+    expect(entry.sourceUrlId, 0);
+    expect(entry.sourceColumn, 0);
+    expect(entry.sourceLine, 0);
+    expect(entry.sourceNameId, null);
+  });
+
   test('parse with source location and name', () {
     SingleMapping map = parse(jsonEncode(MAP_WITH_SOURCE_LOCATION_AND_NAME));
     expect(map.lines.length, 1);
