diff options
author | Lukas Mai <l.mai@web.de> | 2015-02-12 13:29:29 +0100 |
---|---|---|
committer | Tony Cook <tony@develop-help.com> | 2015-06-09 12:02:19 +1000 |
commit | 46b27d2f2c37f40dde845f9b4743975c69f2cc27 (patch) | |
tree | 413e79520c7d7a9bd9c455e27e7834d79a33645d /util.c | |
parent | bc75599f3966061f79dd05f8d4bfbd827ca8a14e (diff) | |
download | perl-46b27d2f2c37f40dde845f9b4743975c69f2cc27.tar.gz |
don't fatalize warnings during unwinding (#123398)
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -1938,7 +1938,10 @@ Perl_vwarner(pTHX_ U32 err, const char* pat, va_list* args) { dVAR; PERL_ARGS_ASSERT_VWARNER; - if (PL_warnhook == PERL_WARNHOOK_FATAL || ckDEAD(err)) { + if ( + (PL_warnhook == PERL_WARNHOOK_FATAL || ckDEAD(err)) && + !(PL_in_eval & EVAL_KEEPERR) + ) { SV * const msv = vmess(pat, args); if (PL_parser && PL_parser->error_count) { |