From 182c3b0db3aebda8dfb134f4b55a25e3bba9f144 Mon Sep 17 00:00:00 2001 From: joey Date: Fri, 25 Aug 2006 22:08:03 +0000 Subject: use a hash --- IkiWiki/Render.pm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'IkiWiki') diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm index 8e998e8b2..e97f46775 100644 --- a/IkiWiki/Render.pm +++ b/IkiWiki/Render.pm @@ -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 { -- cgit v1.2.3