Huw Davies : msi: Don't call CloseServiceHandle() with an invalid handle.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Jul 16 08:37:19 CDT 2015


Module: wine
Branch: master
Commit: fed41f530666f508c645e2c33b52563e8756be21
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=fed41f530666f508c645e2c33b52563e8756be21

Author: Huw Davies <huw at codeweavers.com>
Date:   Thu Jul 16 11:56:06 2015 +0100

msi: Don't call CloseServiceHandle() with an invalid handle.

---

 dlls/msi/action.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index c90114c..c0ab23d 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -5876,8 +5876,8 @@ static UINT ITERATE_InstallService(MSIRECORD *rec, LPVOID param)
 
     if (image_path != file->TargetPath) msi_free(image_path);
 done:
-    CloseServiceHandle(service);
-    CloseServiceHandle(hscm);
+    if (service) CloseServiceHandle(service);
+    if (hscm) CloseServiceHandle(hscm);
     msi_free(name);
     msi_free(disp);
     msi_free(sd.lpDescription);
@@ -6051,8 +6051,8 @@ done:
     msi_ui_actiondata( package, szStartServices, uirow );
     msiobj_release( &uirow->hdr );
 
-    CloseServiceHandle(service);
-    CloseServiceHandle(scm);
+    if (service) CloseServiceHandle(service);
+    if (scm) CloseServiceHandle(scm);
 
     msi_free(name);
     msi_free(args);
@@ -6161,8 +6161,8 @@ static UINT stop_service( LPCWSTR name )
         WARN("Failed to stop service (%s): %d\n", debugstr_w(name), GetLastError());
 
 done:
-    CloseServiceHandle(service);
-    CloseServiceHandle(scm);
+    if (service) CloseServiceHandle(service);
+    if (scm) CloseServiceHandle(scm);
 
     return ERROR_SUCCESS;
 }
@@ -6299,8 +6299,8 @@ done:
     msi_ui_actiondata( package, szDeleteServices, uirow );
     msiobj_release( &uirow->hdr );
 
-    CloseServiceHandle( service );
-    CloseServiceHandle( scm );
+    if (service) CloseServiceHandle( service );
+    if (scm) CloseServiceHandle( scm );
     msi_free( name );
     msi_free( display_name );
 




More information about the wine-cvs mailing list