summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-07-29 21:38:50 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-07-29 21:38:50 +0000
commit8f2d8142e40a883e0208904db99a7dea24679098 (patch)
tree866417a3bbcbfea1ca8f50801eaaef68a86c98da
parentfe64ddb62e19a83cfcde45d05a312734dbb056f8 (diff)
* Allow preprocessor directives to be expanded in inlined blog pages.
However, to avoid inlining loops etc, don't expand inline directives in inlined pages.
-rw-r--r--IkiWiki/Plugin/inline.pm11
-rw-r--r--debian/changelog7
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 <joeyh@debian.org> Sat, 29 Jul 2006 03:24:58 -0400
+ -- Joey Hess <joeyh@debian.org> Sat, 29 Jul 2006 17:12:56 -0400
ikiwiki (1.11) unstable; urgency=low