From 8f2d8142e40a883e0208904db99a7dea24679098 Mon Sep 17 00:00:00 2001 From: joey Date: Sat, 29 Jul 2006 21:38:50 +0000 Subject: [PATCH] * Allow preprocessor directives to be expanded in inlined blog pages. However, to avoid inlining loops etc, don't expand inline directives in inlined pages. --- IkiWiki/Plugin/inline.pm | 11 ++++++++++- debian/changelog | 7 +++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm index 1ea347b08..427c25a96 100644 --- a/IkiWiki/Plugin/inline.pm +++ b/IkiWiki/Plugin/inline.pm @@ -21,6 +21,7 @@ sub import { #{{{ package IkiWiki; my %toping; +my $processing_inline=0; sub preprocess_inline (@) { #{{{ my %params=@_; @@ -35,6 +36,12 @@ sub preprocess_inline (@) { #{{{ $params{show}=10; } + # Avoid nested inlines, to avoid loops etc. + if ($processing_inline) { + return ""; + } + $processing_inline=1; + my @list; foreach my $page (keys %pagesources) { next if $page eq $params{page}; @@ -104,6 +111,8 @@ sub preprocess_inline (@) { #{{{ $toping{$params{page}}=1 unless $config{rebuild}; } + $processing_inline=0; + return $ret; } #}}} @@ -114,7 +123,7 @@ sub get_inline_content ($$) { #{{{ my $file=$pagesources{$page}; my $type=pagetype($file); if (defined $type) { - return htmlize($type, preprocess($page, $destpage, linkify($page, $destpage, readfile(srcfile($file))), 1)); + return htmlize($type, preprocess($page, $destpage, linkify($page, $destpage, readfile(srcfile($file))))); } else { return ""; diff --git a/debian/changelog b/debian/changelog index 6214f5920..7685f9603 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -ikiwiki (1.12) UNRELEASED; urgency=low +ikiwiki (1.12) unstable; urgency=low "Viva l'Italia!" * New pagestats plugin from Enrico, which can generate a table counting @@ -21,8 +21,11 @@ ikiwiki (1.12) UNRELEASED; urgency=low * Add --tagbase option to tag plugin. * Add exclude option in setup files, works same as --exclude. * Put categories in rss feeds for tagged items. + * Allow preprocessor directives to be expanded in inlined blog pages. + However, to avoid inlining loops etc, don't expand inline directives in + inlined pages. - -- Joey Hess Sat, 29 Jul 2006 03:24:58 -0400 + -- Joey Hess Sat, 29 Jul 2006 17:12:56 -0400 ikiwiki (1.11) unstable; urgency=low -- 2.44.0