T
Ted Byers
I have done all the usual things (as specified in the FAQ), and more,
but it isn't enough.
Here is how my script starts:
use strict;
use warnings;
use DBI;
use DateTime::Format::MySQL;
use Date::Manip;
use DateTime::Format:ateManip;
BEGIN {
$SIG{__WARN__} = sub{ print STDERR "Perl: ", @_; };
$SIG{__DIE__} = sub{ print STDERR "Perl: ", @_; exit 1};
}
$| = 1;
In the body of the script, this script does very little except make a
DB connection, place the values from the record set that results from
a trivial select query into a variable, and then prints it. Then all
handles are closed and the progrma ends. The error actually arises
after the last statement (and does not appear in ANY of my other
scripts that use the packes listed above).
Here is the error statement I get:
Perl: Can't call method "FETCH" on an undefined value at C:/Perl/site/
lib/Win32/TieRegistry.pm line 1485, <DATA> line 335 during global
destruction.
At no time have I made direct use of the file mentioned, so it must be
something one of the above packages has done. However, there is no
information provided as to what happened that led to this error. It
does not even say what object is being destructed or what package
created, or failed to create, it.
How can I modify the signal handling I set up above so that I can get
this information?
Thanks
Ted
but it isn't enough.
Here is how my script starts:
use strict;
use warnings;
use DBI;
use DateTime::Format::MySQL;
use Date::Manip;
use DateTime::Format:ateManip;
BEGIN {
$SIG{__WARN__} = sub{ print STDERR "Perl: ", @_; };
$SIG{__DIE__} = sub{ print STDERR "Perl: ", @_; exit 1};
}
$| = 1;
In the body of the script, this script does very little except make a
DB connection, place the values from the record set that results from
a trivial select query into a variable, and then prints it. Then all
handles are closed and the progrma ends. The error actually arises
after the last statement (and does not appear in ANY of my other
scripts that use the packes listed above).
Here is the error statement I get:
Perl: Can't call method "FETCH" on an undefined value at C:/Perl/site/
lib/Win32/TieRegistry.pm line 1485, <DATA> line 335 during global
destruction.
At no time have I made direct use of the file mentioned, so it must be
something one of the above packages has done. However, there is no
information provided as to what happened that led to this error. It
does not even say what object is being destructed or what package
created, or failed to create, it.
How can I modify the signal handling I set up above so that I can get
this information?
Thanks
Ted