I also don't know why it returns 0. I have tried to force
$! = 1;
just before the die and the script ends with return code 0 to the shell.
The functions Log and CloseLog are very simple. They write a formatted log line and close the log file.
thanks
Xavi | [reply] [d/l] |
Do you have a $SIG{__DIE__} handler that calls exit?
They write a formatted log line and close the log file.
Both of which can change $!. It's unrelated to the problem you asked about, but a bug nonetheless.
| [reply] [d/l] [select] |
No I don't have any signal handler defined. I also tried to print the whole %SIG hash just before the die, to see if any module had set any signal handler that I wasn't aware of, and the only signal handler active was the floating point exception handler.
thanks
Xavi
| [reply] |