stylistic changes
[ikiwiki.git] / IkiWiki / Rcs / monotone.pm
index 992065931daf293acad0dda7814d05006d1f644a..0ae2c1a3268e26489721de080078e07ab0bacbb5 100644 (file)
@@ -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.
@@ -422,7 +416,7 @@ sub rcs_recentchanges ($) { #{{{
                                                $committype = "monotone";
                                        }
                                } elsif ($cert->{name} eq "date") {
-                                       $when = time - str2time($cert->{value}, 'UTC');
+                                       $when = str2time($cert->{value}, 'UTC');
                                } elsif ($cert->{name} eq "changelog") {
                                        my $messageText = $cert->{value};
                                        # split the changelog into multiple
@@ -458,54 +452,6 @@ sub rcs_recentchanges ($) { #{{{
        return @ret;
 } #}}}
 
-sub rcs_notify () { #{{{
-       debug("The monotone rcs_notify function is currently untested. Use at own risk!");
-       
-       if (! exists $ENV{REV}) {
-               error(gettext("REV is not set, not running from mtn post-commit hook, cannot send notifications"));
-       }
-       if ($ENV{REV} !~ m/($sha1_pattern)/) { # sha1 is untainted now
-               error(gettext("REV is not a valid revision identifier, cannot send notifications"));
-       }
-       my $rev = $1;
-       
-       check_config();
-
-       my $automator = Monotone->new();
-       $automator->open(undef, $config{mtnrootdir});
-
-       my $certs = [read_certs($automator, $rev)];
-       my $user;
-       my $message;
-       my $when;
-
-       foreach my $cert (@$certs) {
-               if ($cert->{signature} eq "ok" && $cert->{trust} eq "trusted") {
-                       if ($cert->{name} eq "author") {
-                               $user = $cert->{value};
-                       } elsif ($cert->{name} eq "date") {
-                               $when = $cert->{value};
-                       } elsif ($cert->{name} eq "changelog") {
-                               $message = $cert->{value};
-                       }
-               }
-       }
-               
-       my @changed_pages = get_changed_files($automator, $rev);
-       
-       $automator->close();
-       
-       require IkiWiki::UserInfo;
-       send_commit_mails(
-               sub {
-                       return $message;
-               },
-               sub {
-                       `mtn --root=$config{mtnrootdir} au content_diff -r $rev`;
-               },
-               $user, @changed_pages);
-} #}}}
-
 sub rcs_getctime ($) { #{{{
        my $file=shift;