From 8621e52e0939004ba170fb183e7b9c49aeb893e7 Mon Sep 17 00:00:00 2001 From: "http://thm.id.fedoraproject.org/" Date: Wed, 17 Dec 2008 05:54:16 -0500 Subject: rename bugs/bugfix_for:___38____35__34__59__mtn:_operation_canceled:_Broken_pipe__38____35__34__59_____40__patch__41__.mdwn to bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn --- ...nceled:_Broken_pipe__34_____40__patch__41__.mdwn | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn (limited to 'doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn') diff --git a/doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn b/doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn new file mode 100644 index 000000000..2167deac4 --- /dev/null +++ b/doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn @@ -0,0 +1,21 @@ +When using monotone as revision control system, a "mtn: operation canceled: Broken pipe" message is printed. Reason is that, in a call to mtn, the pipe is closed before mtn has done all its output. This patch fixes the problem. + + diff -up ikiwiki/IkiWiki/Plugin/monotone.pm.orig ikiwiki/IkiWiki/Plugin/monotone.pm + --- ikiwiki/IkiWiki/Plugin/monotone.pm.orig 2008-11-12 23:45:24.000000000 +0100 + +++ ikiwiki/IkiWiki/Plugin/monotone.pm 2008-12-16 12:41:38.000000000 +0100 + @@ -525,13 +525,12 @@ sub rcs_recentchanges ($) { #{{{ + my $child = open(MTNLOG, "-|"); + if (! $child) { + exec("mtn", "log", "--root=$config{mtnrootdir}", "--no-graph", + - "--brief") || error("mtn log failed to run"); + + "--brief", "--last=$num") || error("mtn log failed to run"); + } + + - while (($num >= 0) and (my $line = )) { + + while (my $line = ) { + if ($line =~ m/^($sha1_pattern)/) { + push @revs, $1; + - $num -= 1; + } + } + close MTNLOG || debug("mtn log exited $?"); -- cgit v1.2.3 From f9b87a9f8b498f3a41614b159dcb278024be70dd Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 17 Dec 2008 13:59:12 -0500 Subject: monotone: When getting the log, tell monotone how many entries we want, rather than closing the pipe, which it dislikes. (thm) --- IkiWiki/Plugin/monotone.pm | 5 ++--- debian/changelog | 2 ++ ...mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn | 3 +++ 3 files changed, 7 insertions(+), 3 deletions(-) (limited to 'doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn') diff --git a/IkiWiki/Plugin/monotone.pm b/IkiWiki/Plugin/monotone.pm index f31a8606b..3a8b267a3 100644 --- a/IkiWiki/Plugin/monotone.pm +++ b/IkiWiki/Plugin/monotone.pm @@ -525,13 +525,12 @@ sub rcs_recentchanges ($) { #{{{ my $child = open(MTNLOG, "-|"); if (! $child) { exec("mtn", "log", "--root=$config{mtnrootdir}", "--no-graph", - "--brief") || error("mtn log failed to run"); + "--brief", "--last=$num") || error("mtn log failed to run"); } - while (($num >= 0) and (my $line = )) { + while (my $line = ) { if ($line =~ m/^($sha1_pattern)/) { push @revs, $1; - $num -= 1; } } close MTNLOG || debug("mtn log exited $?"); diff --git a/debian/changelog b/debian/changelog index b43144b36..8f5783208 100644 --- a/debian/changelog +++ b/debian/changelog @@ -16,6 +16,8 @@ ikiwiki (2.71) UNRELEASED; urgency=low * meta: Pass info to htmlscrubber so htmlscrubber_skip can take effect. * htmlbalance: don't compact whitespace, and set misc other options (smcv) * rename: Fix double-escaping of page name in edit box. + * monotone: When getting the log, tell monotone how many entries + we want, rather than closing the pipe, which it dislikes. (thm) -- Joey Hess Mon, 17 Nov 2008 14:02:10 -0500 diff --git a/doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn b/doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn index 2167deac4..aa13ec339 100644 --- a/doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn +++ b/doc/bugs/bugfix_for:___34__mtn:_operation_canceled:_Broken_pipe__34_____40__patch__41__.mdwn @@ -19,3 +19,6 @@ When using monotone as revision control system, a "mtn: operation canceled: Brok } } close MTNLOG || debug("mtn log exited $?"); + +> Thanks for the patch, and for testing the monotone backend. +> applied [[done]] --[[Joey]] -- cgit v1.2.3