Merge branch 'master' of https://github.com/odoo/odoo
[odoo/odoo.git] / openerp / tools / osutil.py
index 94684d3..afe3fc4 100644 (file)
@@ -139,10 +139,13 @@ else:
             finally:
                 ws.CloseServiceHandle(srv)
 
-        with close_srv(ws.OpenSCManager(None, None, ws.SC_MANAGER_ALL_ACCESS)) as hscm:
-            with close_srv(wsu.SmartOpenService(hscm, nt_service_name, ws.SERVICE_ALL_ACCESS)) as hs:
-                info = ws.QueryServiceStatusEx(hs)
-                return info['ProcessId'] == getppid()
+        try:
+            with close_srv(ws.OpenSCManager(None, None, ws.SC_MANAGER_ALL_ACCESS)) as hscm:
+                with close_srv(wsu.SmartOpenService(hscm, nt_service_name, ws.SERVICE_ALL_ACCESS)) as hs:
+                    info = ws.QueryServiceStatusEx(hs)
+                    return info['ProcessId'] == getppid()
+        except Exception:
+            return False
 
 if __name__ == '__main__':
     from pprint import pprint as pp