[PATCH] regsvr32: Use correct exit code when DllRegisterServer, DllUnregisterServer and DllInstall fail

Hugh McMaster hugh.mcmaster at outlook.com
Thu Sep 3 04:29:42 CDT 2015


---
 programs/regsvr32/regsvr32.c | 6 +++---
 programs/regsvr32/regsvr32.h | 1 +
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/programs/regsvr32/regsvr32.c b/programs/regsvr32/regsvr32.c
index 9f4764c..e560d32 100644
--- a/programs/regsvr32/regsvr32.c
+++ b/programs/regsvr32/regsvr32.c
@@ -133,7 +133,7 @@ static int RegisterDll(const WCHAR* strDll)
     if(FAILED(hr))
     {
         output_write(STRING_REGISTER_FAILED, strDll);
-        return -1;
+        return DLLSERVER_FAILED;
     }
     output_write(STRING_REGISTER_SUCCESSFUL, strDll);
 
@@ -156,7 +156,7 @@ static int UnregisterDll(const WCHAR* strDll)
     if(FAILED(hr))
     {
         output_write(STRING_UNREGISTER_FAILED, strDll);
-        return -1;
+        return DLLSERVER_FAILED;
     }
     output_write(STRING_UNREGISTER_SUCCESSFUL, strDll);
 
@@ -182,7 +182,7 @@ static int InstallDll(BOOL install, const WCHAR *strDll, const WCHAR *command_li
             output_write(STRING_INSTALL_FAILED, strDll);
         else
             output_write(STRING_UNINSTALL_FAILED, strDll);
-        return -1;
+        return DLLSERVER_FAILED;
     }
     if (install)
         output_write(STRING_INSTALL_SUCCESSFUL, strDll);
diff --git a/programs/regsvr32/regsvr32.h b/programs/regsvr32/regsvr32.h
index 949d282..82a14ca 100644
--- a/programs/regsvr32/regsvr32.h
+++ b/programs/regsvr32/regsvr32.h
@@ -22,6 +22,7 @@
 #define INVALID_ARG                           1
 #define LOADLIBRARY_FAILED                    3
 #define GETPROCADDRESS_FAILED                 4
+#define DLLSERVER_FAILED                      5
 
 /* Resource strings */
 #define STRING_HEADER                      1000
-- 
1.9.1




More information about the wine-patches mailing list