From 56b610277fdf81b3de4c3f2e396bddf3bb338f85 Mon Sep 17 00:00:00 2001 From: "https://shinji.startssl.com/" Date: Mon, 28 Jan 2013 04:35:28 -0400 Subject: [PATCH] Create new bug with patch --- ...95__diffurl__61__1_when_diffurl_is_empty.mdwn | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 doc/bugs/recentchanges_sets_has__95__diffurl__61__1_when_diffurl_is_empty.mdwn diff --git a/doc/bugs/recentchanges_sets_has__95__diffurl__61__1_when_diffurl_is_empty.mdwn b/doc/bugs/recentchanges_sets_has__95__diffurl__61__1_when_diffurl_is_empty.mdwn new file mode 100644 index 000000000..d0297bb3e --- /dev/null +++ b/doc/bugs/recentchanges_sets_has__95__diffurl__61__1_when_diffurl_is_empty.mdwn @@ -0,0 +1,16 @@ +recentchanges.pm sets the template variable HAS_DIFFURL to 1 based solely on whether or not diffurl is defined. I found that diffurl was defined, but empty. The recentchanges template depends on this for recentchangesdiff to properly function -- diff toggling is dependent on HAS_DIFFURL evaluating to false. Adding a check for a non-zero length diffurl fixed the issue for me. A patch against ikiwiki-3.20121212 is as follows: + + --- a/IkiWiki/Plugin/recentchanges.pm 2013-01-27 20:08:59.000000000 -0800 + +++ b/IkiWiki/Plugin/recentchanges.pm 2013-01-27 20:08:30.000000000 -0800 + @@ -181,7 +181,8 @@ sub store ($$$) { + else { + $_->{link} = pagetitle($_->{page}); + } + - if (defined $_->{diffurl}) { + + if (defined $_->{diffurl} && + + length($_->{diffurl}) > 0) { + $has_diffurl=1; + } + + +(There should be one more line at the bottom with a single space on it...)