File tree Expand file tree Collapse file tree 2 files changed +10
-8
lines changed Expand file tree Collapse file tree 2 files changed +10
-8
lines changed Original file line number Diff line number Diff line change @@ -350,16 +350,15 @@ function REPLServer(prompt,
350
350
debug ( 'domain error' ) ;
351
351
const top = replMap . get ( self ) ;
352
352
internalUtil . decorateErrorStack ( e ) ;
353
- if ( e . stack && self . replMode === exports . REPL_MODE_STRICT ) {
353
+ if ( e instanceof SyntaxError && e . stack ) {
354
+ // remove repl:line-number and stack trace
355
+ e . stack = e . stack
356
+ . replace ( / ^ r e p l : \d + \r ? \n / , '' )
357
+ . replace ( / ^ \s + a t \s .* \n ? / gm, '' ) ;
358
+ } else if ( e . stack && self . replMode === exports . REPL_MODE_STRICT ) {
354
359
e . stack = e . stack . replace ( / ( \s + a t \s + r e p l : ) ( \d + ) / ,
355
360
( _ , pre , line ) => pre + ( line - 1 ) ) ;
356
361
}
357
- if ( e instanceof SyntaxError &&
358
- e . stack &&
359
- ! e . stack . match ( / ^ S y n t a x E r r o r : / ) ) {
360
- // remove filename:line-number
361
- e . stack = e . stack . replace ( / ^ .* ?\n / , '' ) ;
362
- }
363
362
top . outputStream . write ( ( e . stack || e ) + '\n' ) ;
364
363
top . lineParser . reset ( ) ;
365
364
top . bufferedCommand = '' ;
Original file line number Diff line number Diff line change @@ -333,9 +333,12 @@ function error_test() {
333
333
expect : "'node'\n" + prompt_unix } ,
334
334
{ client : client_unix , send : 'function name(){ return "nodejs"; };name()' ,
335
335
expect : "'nodejs'\n" + prompt_unix } ,
336
- // Avoid emitting filename :line-number for SyntaxError
336
+ // Avoid emitting repl :line-number for SyntaxError
337
337
{ client : client_unix , send : 'a = 3.5e' ,
338
338
expect : / ^ (? ! r e p l ) / } ,
339
+ // Avoid emitting stack trace
340
+ { client : client_unix , send : 'a = 3.5e' ,
341
+ expect : / ^ (? ! \s + a t \s ) / } ,
339
342
] ) ;
340
343
}
341
344
You can’t perform that action at this time.
0 commit comments