CGI-Alert
view release on metacpan or search on metacpan
lib/CGI/Alert.pm view on Meta::CPAN
</pre>
<p>
If that indicates a problem you can fix, please do so.
</p>
<p>
Otherwise, don't panic: I have sent a notification to the
[MAINTAINER], providing details of the error.
</p>
-
# For stack trace: names of the fields returned by caller(), in order.
our @Caller_Fields =
qw(
package
filename
line
subroutine
hasargs
wantarray
evaltext
is_require
lib/CGI/Alert.pm view on Meta::CPAN
##################
# _stack_trace # returns pretty stack trace
##################
sub _stack_trace() {
my @levels;
# Get a full callback history, first-is-first (that is, the
# main script is first, instead of the usual most-recent-first).
# @levels will be a LoH, an array containing hashrefs.
#
# See perlfunc(1) for details on caller() and the 'DB' hack.
my $i = 0;
my @call_info;
while (do { { package DB; @call_info = caller($i++) } } ) {
unshift @levels, {
(map { $_ => shift @call_info } @Caller_Fields),
args => [ @DB::args ],
};
}
# The last few levels of subroutine calls are all inside this
# module. Exclude them.
while ($levels[-1]->{filename} =~ m!/Alert\.pm$!) {
pop @levels;
( run in 2.660 seconds using v1.01-cache-2.11-cpan-a9ef4e587e4 )