diff options
-rw-r--r-- | IkiWiki/Rcs/monotone.pm | 16 | ||||
-rw-r--r-- | doc/bugs/Monotone_rcs_support.mdwn | 29 |
2 files changed, 6 insertions, 39 deletions
diff --git a/IkiWiki/Rcs/monotone.pm b/IkiWiki/Rcs/monotone.pm index 992065931..5717e0043 100644 --- a/IkiWiki/Rcs/monotone.pm +++ b/IkiWiki/Rcs/monotone.pm @@ -239,17 +239,11 @@ sub rcs_commit ($$$;$$) { #{{{ # Something has been committed, has this file changed? my ($out, $err); - #$automator->setOpts("-r", $oldrev, "-r", $rev); - #my ($out, $err) = $automator->call("content_diff", $file); - #debug("Problem committing $file") if ($err ne ""); - # FIXME: use of $file in these backticks is not wise from a - # security POV. Probably safe, but should be avoided - # anyway. - # At the moment the backticks are used because the above call using the automate - # interface was failing. When that bug in monotone is fixed, we should switch - # back. - my $diff = `mtn --root=$config{mtnrootdir} au content_diff -r $oldrev -r $rev $file`; # was just $out; - + $automator->setOpts("r", $oldrev, "r", $rev); + ($out, $err) = $automator->call("content_diff", $file); + debug("Problem committing $file") if ($err ne ""); + my $diff = $out; + if ($diff) { # Commit a revision with just this file changed off # the old revision. diff --git a/doc/bugs/Monotone_rcs_support.mdwn b/doc/bugs/Monotone_rcs_support.mdwn index 116939722..d1ef00246 100644 --- a/doc/bugs/Monotone_rcs_support.mdwn +++ b/doc/bugs/Monotone_rcs_support.mdwn @@ -50,34 +50,7 @@ Here is another patch. It fixes a FIXME you added. I was using $file within ba I was getting an error trying to do it right. I've figured out the error, and now do it right. This should also speed things up (very slightly) - Index: IkiWiki/Rcs/monotone.pm - =================================================================== - --- IkiWiki/Rcs/monotone.pm (revision 4234) - +++ IkiWiki/Rcs/monotone.pm (working copy) - @@ -239,17 +239,11 @@ - - # Something has been committed, has this file changed? - my ($out, $err); - - #$automator->setOpts("-r", $oldrev, "-r", $rev); - - #my ($out, $err) = $automator->call("content_diff", $file); - - #debug("Problem committing $file") if ($err ne ""); - - # FIXME: use of $file in these backticks is not wise from a - - # security POV. Probably safe, but should be avoided - - # anyway. - - # At the moment the backticks are used because the above call using the automate - - # interface was failing. When that bug in monotone is fixed, we should switch - - # back. - - my $diff = `mtn --root=$config{mtnrootdir} au content_diff -r $oldrev -r $rev $file`; # was just $out; - - - + $automator->setOpts("r", $oldrev, "r", $rev); - + ($out, $err) = $automator->call("content_diff", $file); - + debug("Problem committing $file") if ($err ne ""); - + my $diff = $out; - + - if ($diff) { - # Commit a revision with just this file changed off - # the old revision. - +> applied >> BTW, will all the monotone output parsing work if LANG != C? |