diff --git a/src/source_map.cc b/src/source_map.cc index f727b647..3fe1e39e 100644 --- a/src/source_map.cc +++ b/src/source_map.cc @@ -166,6 +166,10 @@ void ForEachVLQSegment(std::string_view* data, int new_values_count = ReadBase64VLQSegment(data, values); if (values_count >= 4) { + if (source_file < 0 || + static_cast(source_file) >= sources.size()) { + THROW("source map mapping references out-of-range source index"); + } segment_func(VlqSegment(col, values[0], sources[source_file], source_line, source_col)); }