@@ -206,8 +206,6 @@ Deps.prototype.readFile = function (file, id, pkg) {
206206 var rs = fs . createReadStream ( file , {
207207 encoding : 'utf8'
208208 } ) ;
209- rs . on ( 'error' , function ( err ) { self . emit ( 'error' , err ) } ) ;
210- this . emit ( 'file' , file , id ) ;
211209 return rs ;
212210} ;
213211
@@ -235,7 +233,9 @@ Deps.prototype.getTransforms = function (file, pkg, opts) {
235233
236234 for ( var i = 0 ; i < transforms . length ; i ++ ) ( function ( i ) {
237235 makeTransform ( transforms [ i ] , function ( err , trs ) {
238- if ( err ) return self . emit ( 'error' , err )
236+ if ( err ) {
237+ return dup . emit ( 'error' , err ) ;
238+ }
239239 streams [ i ] = trs ;
240240 if ( -- pending === 0 ) done ( ) ;
241241 } ) ;
@@ -247,7 +247,7 @@ Deps.prototype.getTransforms = function (file, pkg, opts) {
247247 middle . on ( 'error' , function ( err ) {
248248 err . message += ' while parsing file: ' + file ;
249249 if ( ! err . filename ) err . filename = file ;
250- self . emit ( 'error' , err ) ;
250+ dup . emit ( 'error' , err ) ;
251251 } ) ;
252252 input . pipe ( middle ) . pipe ( output ) ;
253253 }
@@ -346,6 +346,9 @@ Deps.prototype.walk = function (id, parent, cb) {
346346 file = rec . file ;
347347
348348 var ts = self . getTransforms ( file , pkg ) ;
349+ ts . on ( 'error' , function ( err ) {
350+ self . emit ( 'error' , err ) ;
351+ } ) ;
349352 ts . pipe ( concat ( function ( body ) {
350353 rec . source = body . toString ( 'utf8' ) ;
351354 fromSource ( file , rec . source , pkg ) ;
@@ -368,6 +371,9 @@ Deps.prototype.walk = function (id, parent, cb) {
368371
369372 if ( rec . source ) {
370373 var ts = self . getTransforms ( file , pkg ) ;
374+ ts . on ( 'error' , function ( err ) {
375+ self . emit ( 'error' , err ) ;
376+ } ) ;
371377 ts . pipe ( concat ( function ( body ) {
372378 rec . source = body . toString ( 'utf8' ) ;
373379 fromSource ( file , rec . source , pkg ) ;
@@ -379,6 +385,7 @@ Deps.prototype.walk = function (id, parent, cb) {
379385 if ( c ) return fromDeps ( file , c . source , c . package , fakePath , Object . keys ( c . deps ) ) ;
380386
381387 self . persistentCache ( file , id , pkg , persistentCacheFallback , function ( err , c ) {
388+ self . emit ( 'file' , file , id ) ;
382389 if ( err ) {
383390 self . emit ( 'error' , err ) ;
384391 return ;
@@ -387,12 +394,13 @@ Deps.prototype.walk = function (id, parent, cb) {
387394 } ) ;
388395
389396 function persistentCacheFallback ( dataAsString , cb ) {
390- var stream = dataAsString ? toStream ( dataAsString ) : self . readFile ( file , id , pkg ) ;
397+ var stream = dataAsString ? toStream ( dataAsString ) : self . readFile ( file , id , pkg ) . on ( 'error' , cb ) ;
391398 stream
392399 . pipe ( self . getTransforms ( fakePath || file , pkg , {
393400 builtin : builtin ,
394401 inNodeModules : parent . inNodeModules
395402 } ) )
403+ . on ( 'error' , cb )
396404 . pipe ( concat ( function ( body ) {
397405 var src = body . toString ( 'utf8' ) ;
398406 var deps = getDeps ( file , src ) ;
0 commit comments