X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/ac8eab29e8394aca4c0b23a6687ec947ea1ac869..414ccfb1e298a722d2afa8b8540ca84dc1ccc6f2:/IkiWiki/Plugin/cvs.pm?ds=sidebyside diff --git a/IkiWiki/Plugin/cvs.pm b/IkiWiki/Plugin/cvs.pm index 5ce3c5cbe..8e0e2a4da 100644 --- a/IkiWiki/Plugin/cvs.pm +++ b/IkiWiki/Plugin/cvs.pm @@ -202,24 +202,6 @@ sub rcs_commit_staged (@) { return undef # success } -sub cvs_keyword_subst_args ($) { - my $file = shift; - - local $CWD = $config{srcdir}; - - eval q{use File::MimeInfo}; - error($@) if $@; - my $filemime = File::MimeInfo::default($file); - # if (-T $file) { - - if (defined($filemime) && $filemime eq 'text/plain') { - return ($file); - } - else { - return ('-kb', $file); - } -} - sub rcs_add ($) { # filename is relative to the root of the srcdir my $file=shift; @@ -412,11 +394,15 @@ sub rcs_diff ($;$) { my @cvsps = `env TZ=UTC cvsps -q --cvs-direct -z 30 -g -s $rev`; my $blank_lines_seen = 0; + # skip log, get to the diff while (my $line = shift @cvsps) { $blank_lines_seen++ if ($line =~ /^$/); last if $blank_lines_seen == 2; } + @cvsps = @cvsps[0..$maxlines-1] + if defined $maxlines && @cvsps > $maxlines; + if (wantarray) { return @cvsps; } @@ -497,6 +483,24 @@ sub cvs_is_controlling { return (-d "$dir/CVS") ? 1 : 0; } +sub cvs_keyword_subst_args ($) { + my $file = shift; + + local $CWD = $config{srcdir}; + + eval q{use File::MimeInfo}; + error($@) if $@; + my $filemime = File::MimeInfo::default($file); + # if (-T $file) { + + if (defined($filemime) && $filemime eq 'text/plain') { + return ($file); + } + else { + return ('-kb', $file); + } +} + sub cvs_runcvs(@) { my @cmd = @_; unshift @cmd, 'cvs', '-Q';