http://qs321.pair.com?node_id=580762


in reply to What magic is this?

gellyfish I don't think the problem is my error handler (which merely logs problems for background processes). All its doing is uncovering a error message that is usually hidden away

tye I thought $^S was readonly? Anyway, if I could set it I don't think it would have any effect on my Expat.pm

Replies are listed 'Best First'.
Re^2: What magic is this?
by gellyfish (Monsignor) on Oct 26, 2006 at 15:03 UTC

    Yes, it is usually caught by the eval { } block which the author of XML::Parser deliberately put there, because the error was expected under certain circumstances and should be ignored. It is part of the design of the module.

    You don't need to set the $^S you just want to check whether it is set in your die handler:

    $SIG{__DIE__} = sub { if (! $^S ) { # Report the error } else { # Ignore the error as it came # came from inside an eval } };

    /J\

      Ahh yes of course, that's it.

      Thanks a lot for your help