@@ -4,10 +4,13 @@ var cache = require('lru-cache')(100)
44var SourceNode = require ( 'source-map' ) . SourceNode
55var SourceMapGenerator = require ( 'source-map' ) . SourceMapGenerator
66var splitRE = / \n \r | \n | \r / g
7+ var hash = require ( 'hash-sum' )
78
89module . exports = function ( content , filename ) {
910
10- var cacheKey = filename + 'XXX' + content
11+ var cacheKey = hash ( filename + content )
12+ // source-map cache busting for hot-reloadded modules
13+ var filenameWithHash = filename + '?' + cacheKey
1114 var output = cache . get ( cacheKey )
1215 if ( output ) return output
1316
@@ -80,11 +83,11 @@ module.exports = function (content, filename) {
8083 var result = content . slice ( start , end )
8184 var lineOffset = content . slice ( 0 , start ) . split ( splitRE ) . length - 1
8285 var map = new SourceMapGenerator ( )
83- map . setSourceContent ( filename , content )
86+ map . setSourceContent ( filenameWithHash , content )
8487
8588 result . split ( splitRE ) . forEach ( function ( line , index ) {
8689 map . addMapping ( {
87- source : filename ,
90+ source : filenameWithHash ,
8891 original : {
8992 line : index + 1 + lineOffset ,
9093 column : 0
0 commit comments