$ svn diff Index: lib/MDV/Repsys.pm =================================================================== --- lib/MDV/Repsys.pm (révision 93939) +++ lib/MDV/Repsys.pm (copie de travail) @@ -504,9 +504,8 @@ $error } -sub _commit_editor { - my ($msg) = @_; - +sub commit_editor { + my $tmp = new File::Temp(); $tmp->unlink_on_destroy(1); print $tmp <filename) == -1) { warn "Cannot start $editor\n"; - $msg = undef; return 0; } if (open(my $rh, "<", $tmp->filename)) { - my $rmsg = ''; + my $msg = ''; while (<$rh>) { m/^SVN:/ and next; - $rmsg .= $_; + $msg .= $_; } close ($rh); - $msg = \$rmsg; - } else { - $msg = undef; - return 0; + return $msg; } - 1; + return 0; } 1; Index: lib/MDV/Repsys/Remote.pm =================================================================== --- lib/MDV/Repsys/Remote.pm (révision 93939) +++ lib/MDV/Repsys/Remote.pm (copie de travail) @@ -788,6 +788,8 @@ my ($self, $dir, %options) = @_; my $pkgname = $options{pkgname} || $dir; + $options{message} = MDV::Repsys::commit_editor() unless $options{message}; + $options{message} = undef if $options{message} =~ m/^\s*$/m; my $message = $options{message} or do { $self->{error} = "Can't commit w/o log message"; return;