use a hash
parent
6fc3b624f2
commit
182c3b0db3
|
@ -84,7 +84,7 @@ sub parentlinks ($) { #{{{
|
|||
return @ret;
|
||||
} #}}}
|
||||
|
||||
my @preprocessing;
|
||||
my %preprocessing;
|
||||
sub preprocess ($$$) { #{{{
|
||||
my $page=shift; # the page the data comes from
|
||||
my $destpage=shift; # the page the data will appear in (different for inline)
|
||||
|
@ -97,7 +97,7 @@ sub preprocess ($$$) { #{{{
|
|||
if (length $escape) {
|
||||
return "[[$command $params]]";
|
||||
}
|
||||
elsif (grep { $_ eq $page } @preprocessing) {
|
||||
elsif ($preprocessing{$page}) {
|
||||
# Avoid loops of preprocessed pages preprocessing
|
||||
# other pages that preprocess them, etc.
|
||||
return "[[$command would cause preprocessing loop]]";
|
||||
|
@ -129,13 +129,13 @@ sub preprocess ($$$) { #{{{
|
|||
push @params, $val, '';
|
||||
}
|
||||
}
|
||||
push @preprocessing, $page;
|
||||
$preprocessing{$page}=1;
|
||||
my $ret=$hooks{preprocess}{$command}{call}->(
|
||||
@params,
|
||||
page => $page,
|
||||
destpage => $destpage,
|
||||
);
|
||||
pop @preprocessing;
|
||||
delete $preprocessing{$page};
|
||||
return $ret;
|
||||
}
|
||||
else {
|
||||
|
|
Loading…
Reference in New Issue