From be879262d3ba37b59f8ece107271c2bc547074fa Mon Sep 17 00:00:00 2001 From: Darold Gilles Date: Wed, 23 Jul 2014 17:11:06 +0200 Subject: [PATCH] Fix missing initial move to offset in incremental mode before the file change test. Thanks to Herve Werner for the report. --- pgbadger | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pgbadger b/pgbadger index 70ad81d..b83ae0c 100755 --- a/pgbadger +++ b/pgbadger @@ -1046,7 +1046,7 @@ my $td = timediff($t1, $t0); # Global output filehandle my $fh = undef; -if (!$incremental) { +if (!$incremental && ($#given_log_files >= 0) ) { &logmsg('LOG', "Ok, generating $extension report..."); @@ -2162,8 +2162,12 @@ sub check_file_changed my $CURRENT_DATE = $gyear . sprintf("%02d", $gmon + 1) . sprintf("%02d", $gmday); %prefix_vars = (); + $lfile->seek($saved_last_line{current_pos} || 0, 0); + my $more_lines = 0; while (my $line = <$lfile>) { + $more_lines++; + if ($format =~ /syslog/) { my @matches = ($line =~ $compiled_prefix); @@ -2218,6 +2222,11 @@ sub check_file_changed } close($lfile); + if (!$more_lines) { + close($lfile); + return 0; + } + return 1; } -- 2.50.1