git svn: avoid uninitialized var in 'reset'
When "git svn reset" is called with an invalid revision, we bail out and show the user a proper error message instead of giving them a cryptic one related to git-svn internals. ref: http://bugs.debian.org/578908 Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Reported-by: Jens Seidel <jensseidel@users.sf.net> Acked-by: Eric Wong <normalperson@yhbt.net>
Jonathan Nieder committed
May 4, 2010 at 16:36 UTC
70ee0b7797041621b22c448726f4f88102b5a4f5
1 file changed
+2
git-svn.perl
+2
@@ -1185,6 +1185,7 @@ sub cmd_reset {
1185
"history\n";
1186
}
1187
my ($r, $c) = $gs->find_rev_before($target, not $_fetch_parent);
1188
+ die "Cannot find SVN revision $target\n" unless defined($c);
1189
$gs->rev_map_set($r, $c, 'reset', $uuid);
1190
print "r$r = $c ($gs->{ref_id})\n";
1191
}
@@ -3605,6 +3606,7 @@ sub mkfile {
3606
3607
sub rev_map_set {
3608
my ($self, $rev, $commit, $update_ref, $uuid) = @_;
3609
+ defined $commit or die "missing arg3\n";
3610
length $commit == 40 or die "arg3 must be a full SHA1 hexsum\n";
3611
my $db = $self->map_path($uuid);
3612
my $db_lock = "$db.lock";