devmode-test: Fix cleanup failure when VM setup fails

VM setup can fail while preparing the test, leaving the vm attribute
None. Deal with it.

BUG=chromium:777461
BUG=chromium:770764
TEST=None

Change-Id: Id189343cf4f21cacb702507c0a6b9c249e0eaf30
Reviewed-on: https://chromium-review.googlesource.com/741684
Commit-Ready: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Reviewed-by: Nicolas Norvez <norvez@chromium.org>
diff --git a/devmode-test/devinstall_test.py b/devmode-test/devinstall_test.py
index f9b1e44..a294387 100755
--- a/devmode-test/devinstall_test.py
+++ b/devmode-test/devinstall_test.py
@@ -64,18 +64,17 @@
     try:
       if self.devserver:
         self.devserver.Stop()
-
       self.devserver = None
       if self.device:
         self.device.Cleanup()
-
       self.device = None
-      self.vm.Stop()
+      if self.vm:
+        self.vm.Stop()
       self.vm = None
       osutils.RmDir(self.tmpdir, ignore_missing=True)
       self.tmpdir = None
     except Exception:
-      logging.warning('Received error during cleanup', exc_info=True)
+      logging.exception('Received error during cleanup')
 
   def _WipeDevInstall(self):
     """Wipes the devinstall state."""