]> git.proxmox.com Git - qemu-server.git/commitdiff
rollback: do important tests before stopping VM
authorDietmar Maurer <dietmar@proxmox.com>
Wed, 19 Sep 2012 08:12:12 +0000 (10:12 +0200)
committerDietmar Maurer <dietmar@proxmox.com>
Wed, 19 Sep 2012 08:12:12 +0000 (10:12 +0200)
PVE/QemuServer.pm

index 91ee5c13d3049daf885a7bdc13740e1079eeede3..3460a925b83a22bdf67784621b66bdbff7bd5afb 100644 (file)
@@ -3745,6 +3745,13 @@ sub snapshot_rollback {
 
        my $conf = load_config($vmid);
 
+       $snap = $conf->{snapshots}->{$snapname};
+
+       die "snapshot '$snapname' does not exist\n" if !defined($snap); 
+
+       die "unable to rollback to incomplete snapshot (snapstate = $snap->{snapstate})\n" 
+           if $snap->{snapstate};
+
        if ($prepare) {
            check_lock($conf);
            vm_stop($storecfg, $vmid, undef, undef, 5, undef, undef);
@@ -3760,13 +3767,6 @@ sub snapshot_rollback {
            delete $conf->{lock};
        }
 
-       $snap = $conf->{snapshots}->{$snapname};
-
-       die "snapshot '$snapname' does not exist\n" if !defined($snap); 
-
-       die "unable to rollback to incomplete snapshot (snapstate = $snap->{snapstate})\n" 
-           if $snap->{snapstate};
-
        if (!$prepare) {
            # copy snapshot config to current config
            $conf = &$snapshot_apply_config($conf, $snap);