diff --git a/packages/babel-core/src/transformation/file/index.js b/packages/babel-core/src/transformation/file/index.js index 5b47df51ea..51dd9a43d4 100644 --- a/packages/babel-core/src/transformation/file/index.js +++ b/packages/babel-core/src/transformation/file/index.js @@ -359,21 +359,28 @@ export default class File extends Store { sourceRoot: inputMapConsumer.sourceRoot }); + // This assumes the output map always has a single source, since Babel always compiles a single source file to a + // single output file. + const source = outputMapConsumer.sources[0]; + inputMapConsumer.eachMapping(function (mapping) { - mergedGenerator.addMapping({ - source: mapping.source, - - original: { - line: mapping.originalLine, - column: mapping.originalColumn - }, - - generated: outputMapConsumer.generatedPositionFor({ - line: mapping.generatedLine, - column: mapping.generatedColumn, - source: outputMapConsumer.file - }) + const generatedPosition = outputMapConsumer.generatedPositionFor({ + line: mapping.generatedLine, + column: mapping.generatedColumn, + source: source }); + if(generatedPosition.column != null) { + mergedGenerator.addMapping({ + source: mapping.source, + + original: { + line: mapping.originalLine, + column: mapping.originalColumn + }, + + generated: generatedPosition + }); + } }); let mergedMap = mergedGenerator.toJSON();