Browse Source

Catch exceptions when trying to eject the SD card on Windows

CURA-106 #start-review
Arjen Hiemstra 9 years ago
parent
commit
3f1e5bb44a
1 changed files with 6 additions and 3 deletions
  1. 6 3
      plugins/RemovableDriveOutputDevice/WindowsRemovableDrivePlugin.py

+ 6 - 3
plugins/RemovableDriveOutputDevice/WindowsRemovableDrivePlugin.py

@@ -88,10 +88,13 @@ class WindowsRemovableDrivePlugin(RemovableDrivePlugin.RemovableDrivePlugin):
 
         result = None
         # Then, try and tell it to eject
-        if not windll.kernel32.DeviceIoControl(handle, IOCTL_STORAGE_EJECT_MEDIA, None, None, None, None, None, None):
+        try:
+            if not windll.kernel32.DeviceIoControl(handle, IOCTL_STORAGE_EJECT_MEDIA, None, None, None, None, None, None):
+                result = False
+            else:
+                result = True
+        except Exception as e:
             result = False
-        else:
-            result = True
 
         # Finally, close the handle
         windll.kernel32.CloseHandle(handle)