diff options
author | Joey Hess <joey@kitenet.net> | 2010-12-29 19:58:49 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2010-12-29 19:58:49 -0400 |
commit | 4fb26f4e60f2df282fc972e4b8506ccd306de789 (patch) | |
tree | ba95769fbc59a296364076fd2e649f3ebc0438af /IkiWiki/Plugin/darcs.pm | |
parent | 7d48813166c637e5bb2e11ef690fc7521716bd31 (diff) | |
download | ikiwiki-4fb26f4e60f2df282fc972e4b8506ccd306de789.tar ikiwiki-4fb26f4e60f2df282fc972e4b8506ccd306de789.tar.gz |
Add a second parameter to the rcs_diff hook, and avoid bloating memory reading in enormous commits.
Diffstat (limited to 'IkiWiki/Plugin/darcs.pm')
-rw-r--r-- | IkiWiki/Plugin/darcs.pm | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/IkiWiki/Plugin/darcs.pm b/IkiWiki/Plugin/darcs.pm index 0f63b8807..cd4fcd0ff 100644 --- a/IkiWiki/Plugin/darcs.pm +++ b/IkiWiki/Plugin/darcs.pm @@ -373,11 +373,13 @@ sub rcs_recentchanges ($) { return @ret; } -sub rcs_diff ($) { +sub rcs_diff ($;$) { my $rev=shift; + my $maxlines=shift; my @lines; foreach my $line (silentsystem("darcs", "diff", "--match", "hash ".$rev)) { if (@lines || $line=~/^diff/) { + last if defined $maxlines && @lines == $maxlines; push @lines, $line."\n"; } } |