Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UIWizardCloneVM.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UIWizardCloneVM.cpp	(revision 90751)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UIWizardCloneVM.cpp	(revision 90752)
@@ -168,7 +168,12 @@
         QUuid uSnapshotId;
         CProgress comProgress = comSessionMachine.TakeSnapshot(strSnapshotName, "", true, uSnapshotId);
-        if (comSessionMachine.isOk())
-        {
-            /* Make sure progress valid: */
+        if (!comSessionMachine.isOk())
+        {
+            msgCenter().cannotTakeSnapshot(comSessionMachine, strMachineName, this);
+            return false;
+        }
+        else
+        {
+            /* Make sure progress initially valid: */
             if (!comProgress.isNull() && !comProgress.GetCompleted())
             {
@@ -200,24 +205,21 @@
                 return false;
             }
-        }
-        else
-        {
-            msgCenter().cannotTakeSnapshot(comSessionMachine, strMachineName, this);
-            return false;
+            else
+            {
+                /* Look for created snapshot: */
+                const CSnapshot comCreatedSnapshot = m_machine.FindSnapshot(uSnapshotId.toString());
+                if (comCreatedSnapshot.isNull())
+                {
+                    msgCenter().cannotFindSnapshotByName(m_machine, strSnapshotName, this);
+                    return false;
+                }
+
+                /* Update machine for cloning finally: */
+                srcMachine = comCreatedSnapshot.GetMachine();
+            }
         }
 
         /* Unlock machine finally: */
         comSession.UnlockMachine();
-
-        /* Look for created snapshot: */
-        const CSnapshot comCreatedSnapshot = m_machine.FindSnapshot(uSnapshotId.toString());
-        if (comCreatedSnapshot.isNull())
-        {
-            msgCenter().cannotFindSnapshotByName(m_machine, strSnapshotName, this);
-            return false;
-        }
-
-        /* Update machine for cloning finally: */
-        srcMachine = comCreatedSnapshot.GetMachine();
     }
 
