Author: akhaldi
Date: Sun Oct 30 17:16:53 2016
New Revision: 73079

URL: http://svn.reactos.org/svn/reactos?rev=73079&view=rev
Log:
[0.4.3] * Merge regsvr32 fix by Mark in r73077. CORE-12209

Modified:
    branches/ros-branch-0_4_3/   (props changed)
    branches/ros-branch-0_4_3/reactos/   (props changed)
    branches/ros-branch-0_4_3/reactos/base/system/regsvr32/regsvr32.c

Propchange: branches/ros-branch-0_4_3/
------------------------------------------------------------------------------
--- svn:mergeinfo       (original)
+++ svn:mergeinfo       Sun Oct 30 17:16:53 2016
@@ -1 +1 @@
-/trunk:73043
+/trunk:73043,73077

Propchange: branches/ros-branch-0_4_3/reactos/
------------------------------------------------------------------------------
--- svn:mergeinfo       (original)
+++ svn:mergeinfo       Sun Oct 30 17:16:53 2016
@@ -21,4 +21,4 @@
 
/branches/usb-bringup:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859
 /branches/usb-bringup-trunk:55019-55543,55548-55554,55556-55567
 /branches/wlan-bringup:54809-54998
-/trunk/reactos:73043
+/trunk/reactos:73043,73077

Modified: branches/ros-branch-0_4_3/reactos/base/system/regsvr32/regsvr32.c
URL: 
http://svn.reactos.org/svn/reactos/branches/ros-branch-0_4_3/reactos/base/system/regsvr32/regsvr32.c?rev=73079&r1=73078&r2=73079&view=diff
==============================================================================
--- branches/ros-branch-0_4_3/reactos/base/system/regsvr32/regsvr32.c   
[iso-8859-1] (original)
+++ branches/ros-branch-0_4_3/reactos/base/system/regsvr32/regsvr32.c   
[iso-8859-1] Sun Oct 30 17:16:53 2016
@@ -258,7 +258,7 @@
        LPCSTR lpFuncName;
        LPWSTR lpwDllCmdLine;
        BOOL bUnregister,bSilent,bConsole,bInstall,bNoRegister;
-       UINT nDllCount;
+       UINT nDllCount, fuOldErrorMode;
        HMODULE hDll;
        DLLREGISTER fnDllRegister;
        DLLINSTALL fnDllInstall;
@@ -386,9 +386,11 @@
                if (*argv[i] != _T('/')) {
                        lptDllName = argv[i];
 
+                       fuOldErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS);
                        // Everything is all setup, so load the dll now
                        hDll = 
LoadLibraryEx(lptDllName,0,LOAD_WITH_ALTERED_SEARCH_PATH);
                        if (hDll) {
+                               SetErrorMode(fuOldErrorMode);
                                if (!bNoRegister) {
                                        // Get the address of DllRegisterServer 
or DllUnregisterServer
                                        fnDllRegister = 
(DLLREGISTER)GetProcAddress(hDll,lpFuncName);
@@ -463,6 +465,7 @@
                        else {
                                // The dll could not be loaded; display an 
error message
                                dwErr = GetLastError();
+                               SetErrorMode(fuOldErrorMode);
                                lptMsgBuffer = 
(LPTSTR)malloc((_tcslen(DllNotLoaded) + 2 + _tcslen(lptDllName) + 1) * 
sizeof(TCHAR));
                                
_stprintf(lptMsgBuffer,DllNotLoaded,lptDllName,dwErr);
                                
DisplayMessage(bConsole,bSilent,lptMsgBuffer,ModuleTitle,MB_ICONEXCLAMATION);


Reply via email to