X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/6c83ce4d5608f567f8f94b2f26461b5918e5327e..47789aee7aaecd9205b4a8f73a699289104c6c56:/ikiwiki diff --git a/ikiwiki b/ikiwiki index 1159ce769..42a0ef3ba 100755 --- a/ikiwiki +++ b/ikiwiki @@ -373,15 +373,13 @@ sub rcs_recentchanges ($) { eval q{use Date::Parse}; eval q{use Time::Duration}; - my %sourcepages=reverse %pagesources; - if (-d "$srcdir/.svn") { my $info=`LANG=C svn info $srcdir`; my ($svn_url)=$info=~/^URL: (.*)$/m; - # FIXME: currently assumes that the wiki is under trunk in - # svn. - my ($svn_base)=$svn_url=~m!(/trunk/.*)!; + # FIXME: currently assumes that the wiki is somewhere + # under trunk in svn, doesn't support other layouts. + my ($svn_base)=$svn_url=~m!(/trunk(?:/.*)?)$!; my $div=qr/^--------------------+$/; my $infoline=qr/^r(\d+)\s+\|\s+([^\s]+)\s+\|\s+(\d+-\d+-\d+\s+\d+:\d+:\d+\s+[-+]?\d+).*/; @@ -397,8 +395,8 @@ sub rcs_recentchanges ($) { $user=$2; $when=concise(ago(time - str2time($3))); } - elsif ($state eq 'header' && /^\s+[A-Z]\s+\Q$svn_base\E(.*)/) { - push @pages, $sourcepages{$1}; + elsif ($state eq 'header' && /^\s+[A-Z]\s+\Q$svn_base\E\/(.+)$/) { + push @pages, pagename($1); } elsif ($state eq 'header' && /^$/) { $state='body';