regsvr32: Process the next file in the array if an error occurs

Hugh McMaster hugh.mcmaster at outlook.com
Mon Sep 7 05:38:04 CDT 2015


The Windows version stops processing the current file and moves to the next file on the first error.
---
 programs/regsvr32/regsvr32.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/programs/regsvr32/regsvr32.c b/programs/regsvr32/regsvr32.c
index ff6a3ae..a1b55a3 100644
--- a/programs/regsvr32/regsvr32.c
+++ b/programs/regsvr32/regsvr32.c
@@ -292,8 +292,9 @@ int wmain(int argc, WCHAR* argv[])
             if (CallInstall && Unregister)
                 res = InstallDll(!Unregister, DllName, wsCommandLine);
 
+            /* The Windows version stops processing the current file on the first error. */
             if (res)
-                return res;
+                continue;
 
             if (!CallInstall || (CallInstall && CallRegister))
             {
@@ -304,14 +305,13 @@ int wmain(int argc, WCHAR* argv[])
             }
 
             if (res)
-                return res;
-            /* Confirmed. The Windows version stops on the first error. */
+                continue;
 
             if (CallInstall && !Unregister)
                 res = InstallDll(!Unregister, DllName, wsCommandLine);
 
             if (res)
-		return res;
+		continue;
         }
     }
 
-- 
1.9.1




More information about the wine-patches mailing list