forked from extern/shorewall_code
Print out the include/open stack in WARNING and ERROR messages.
Signed-off-by: Tom Eastep <teastep@shorewall.net>
This commit is contained in:
parent
bd30d59f3d
commit
3e37f47fb5
@ -804,13 +804,42 @@ sub initialize( $;$ ) {
|
|||||||
|
|
||||||
my @abbr = qw( Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec );
|
my @abbr = qw( Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec );
|
||||||
|
|
||||||
|
#
|
||||||
|
# Create 'currentlineinfo'
|
||||||
|
#
|
||||||
|
sub currentlineinfo() {
|
||||||
|
if ( $currentfile ) {
|
||||||
|
my $lineinfo = " $currentfilename ";
|
||||||
|
|
||||||
|
if ( $currentlinenumber eq 'EOF' ) {
|
||||||
|
$lineinfo .= '(EOF)'
|
||||||
|
} else {
|
||||||
|
$currentlinenumber ||= 1;
|
||||||
|
$lineinfo .= "(line $currentlinenumber)";
|
||||||
|
|
||||||
|
for ( my $i = @openstack - 1; $i >= 0; $i-- ) {
|
||||||
|
my $istack = $openstack[$i];
|
||||||
|
|
||||||
|
for ( my $j = ( @$istack - 1 ); $j >= 0; $j-- ) {
|
||||||
|
my $info = $istack->[$j];
|
||||||
|
$lineinfo .= "\n from $info->[1] (line $info->[2])";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$lineinfo;
|
||||||
|
|
||||||
|
} else {
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#
|
#
|
||||||
# Issue a Warning Message
|
# Issue a Warning Message
|
||||||
#
|
#
|
||||||
sub warning_message
|
sub warning_message
|
||||||
{
|
{
|
||||||
my $linenumber = $currentlinenumber || 1;
|
my $currentlineinfo = currentlineinfo;
|
||||||
my $currentlineinfo = $currentfile ? " : $currentfilename " . ( $linenumber eq 'EOF' ? '(EOF)' : "(line $linenumber)" ) : '';
|
|
||||||
our @localtime;
|
our @localtime;
|
||||||
|
|
||||||
$| = 1; #Reset output buffering (flush any partially filled buffers).
|
$| = 1; #Reset output buffering (flush any partially filled buffers).
|
||||||
@ -866,7 +895,7 @@ sub cleanup() {
|
|||||||
#
|
#
|
||||||
sub fatal_error {
|
sub fatal_error {
|
||||||
my $linenumber = $currentlinenumber || 1;
|
my $linenumber = $currentlinenumber || 1;
|
||||||
my $currentlineinfo = $currentfile ? " : $currentfilename " . ( $linenumber eq 'EOF' ? '(EOF)' : "(line $linenumber)" ) : '';
|
my $currentlineinfo = currentlineinfo;
|
||||||
|
|
||||||
$| = 1; #Reset output buffering (flush any partially filled buffers).
|
$| = 1; #Reset output buffering (flush any partially filled buffers).
|
||||||
|
|
||||||
@ -1901,7 +1930,7 @@ EOF
|
|||||||
#
|
#
|
||||||
sub push_open( $ ) {
|
sub push_open( $ ) {
|
||||||
|
|
||||||
push @includestack, [ $currentfile, $currentfilename, $currentlinenumber, $ifstack ];
|
push @includestack, [ $currentfile, $currentfilename, $currentlinenumber, $ifstack ] if $currentfile;
|
||||||
my @a = @includestack;
|
my @a = @includestack;
|
||||||
push @openstack, \@a;
|
push @openstack, \@a;
|
||||||
@includestack = ();
|
@includestack = ();
|
||||||
|
Loading…
Reference in New Issue
Block a user