From 17fb0cf9f9897121d9996e8c23ac0056d29acd7b Mon Sep 17 00:00:00 2001 From: Giuseppe Bilotta Date: Fri, 13 Jan 2012 11:02:11 +0100 Subject: [PATCH] backlink(.) should behave like backlink() Since commit c4d4cad3befbbd444d094cbeb0b6ebba3910a025, the single dot in a pagespec can be used to mean the current page. While this worked correctly in link() it didn't work in backlink(). Fix this by explicitly checking the testpage in backlink against . and replacing it with the current location if necessary. --- IkiWiki.pm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/IkiWiki.pm b/IkiWiki.pm index 08e242a1f..bc56501da 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -2647,8 +2647,14 @@ sub match_link ($$;@) { } sub match_backlink ($$;@) { - my $ret=match_link($_[1], $_[0], @_); - $ret->influences($_[1] => $IkiWiki::DEPEND_LINKS); + my $page=shift; + my $testpage=shift; + my %params=@_; + if ($testpage eq '.') { + $testpage = $params{'location'} + } + my $ret=match_link($testpage, $page, @_); + $ret->influences($testpage => $IkiWiki::DEPEND_LINKS); return $ret; }