Commit 67115405 authored by Sergei Golubchik's avatar Sergei Golubchik

remove `exit 1` from search_pattern_in_file.inc

it broke tests on Windows. Use SEARCH_ABORT instead.
also, remove redundant features and simplify
parent bc46f1a7
......@@ -48,15 +48,12 @@
# Created: 2011-11-11 mleich
#
--error 0,1
perl;
use strict;
die "SEARCH_FILE not set" unless $ENV{SEARCH_FILE};
my @search_files= glob($ENV{SEARCH_FILE});
my $search_pattern= $ENV{SEARCH_PATTERN} or die "SEARCH_PATTERN not set";
my $search_range= $ENV{SEARCH_RANGE};
my $silent= $ENV{SEARCH_SILENT};
my $search_result= 0;
my $content;
foreach my $search_file (@search_files) {
open(FILE, '<', $search_file) || die("Can't open file $search_file: $!");
......@@ -81,39 +78,18 @@ perl;
$content.= $file_content;
}
my @matches= ($content =~ /$search_pattern/gs);
my $res;
if (@matches)
{
$res="FOUND " . scalar(@matches);
$search_result= 1;
}
else
{
$res= "NOT FOUND";
}
my $res=@matches ? "FOUND " . scalar(@matches) : "NOT FOUND";
$ENV{SEARCH_FILE} =~ s{^.*?([^/\\]+)$}{$1};
if (!$silent || $search_result)
{
if ($ENV{SEARCH_OUTPUT} eq "matches")
{
foreach (@matches)
{
print $_ . "\n";
}
}
else
{
print "$res /$search_pattern/ in $ENV{SEARCH_FILE}\n";
if ($ENV{SEARCH_OUTPUT} eq "matches") {
foreach (@matches) {
print $_ . "\n";
}
}
die "$ENV{SEARCH_ABORT}\n"
if $ENV{SEARCH_ABORT} && $res =~ /^$ENV{SEARCH_ABORT}/;
exit($search_result != 1);
elsif ($ENV{SEARCH_ABORT} and $res =~ /^$ENV{SEARCH_ABORT}/) {
die "$res /$search_pattern/ in $ENV{SEARCH_FILE}\n";
} else {
print "$res /$search_pattern/ in $ENV{SEARCH_FILE}\n";
}
EOF
let $SEARCH_RESULT= 1; # Found pattern
if ($errno)
{
let $SEARCH_RESULT= 0; # Did not find pattern
}
......@@ -25,23 +25,23 @@ if (!$_timeout)
}
let $_timeout_counter=`SELECT $_timeout * 10`;
let SEARCH_SILENT=1;
let SEARCH_ABORT=NOT FOUND;
let $_continue= 1;
disable_abort_on_error;
while ($_continue)
{
source include/search_pattern_in_file.inc;
if ($SEARCH_RESULT)
if (!$errno)
{
# Found match
let $_continue= 0;
}
if (!$SEARCH_RESULT)
if ($errno)
{
dec $_timeout_counter;
if ($_timeout_counter == 1)
{
let $SEARCH_SILENT= 0;
enable_abort_on_error;
}
if (!$_timeout_counter)
{
......@@ -49,8 +49,7 @@ while ($_continue)
}
}
}
let SEARCH_SILENT=0;
enable_abort_on_error;
--source include/end_include_file.inc
--let $keep_include_silent=$wait_save_keep_include_silent
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment