https://git.reactos.org/?p=reactos.git;a=commitdiff;h=3f570f3369de963d1f9286fffff41620b0e7c19e

commit 3f570f3369de963d1f9286fffff41620b0e7c19e
Author:     Eric Kohl <eric.k...@reactos.org>
AuthorDate: Sun Dec 2 14:10:25 2018 +0100
Commit:     Eric Kohl <eric.k...@reactos.org>
CommitDate: Sun Dec 2 14:10:25 2018 +0100

    [SETUPAPI] Implement SetupGetNonInteractiveMode() and 
SetupSetNonInteractiveMode().
---
 dll/win32/setupapi/misc.c        | 21 +++++++++++++++++++++
 dll/win32/setupapi/setupapi.spec |  2 +-
 dll/win32/setupapi/stubs.c       |  7 -------
 3 files changed, 22 insertions(+), 8 deletions(-)

diff --git a/dll/win32/setupapi/misc.c b/dll/win32/setupapi/misc.c
index 701af29492..df03525a2e 100644
--- a/dll/win32/setupapi/misc.c
+++ b/dll/win32/setupapi/misc.c
@@ -869,6 +869,27 @@ void WINAPI pSetupSetGlobalFlags( DWORD flags )
     pSetupModifyGlobalFlags(0xFFFFFFFF, flags);
 }
 
+/***********************************************************************
+ *             SetupGetNonInteractiveMode  (SETUPAPI.@)
+ */
+BOOL WINAPI SetupGetNonInteractiveMode(VOID)
+{
+    return (GlobalSetupFlags & PSPGF_NONINTERACTIVE);
+}
+
+/***********************************************************************
+ *             SetupSetNonInteractiveMode  (SETUPAPI.@)
+ */
+BOOL WINAPI SetupSetNonInteractiveMode(BOOL NonInteractiveFlag)
+{
+    BOOL OldValue;
+
+    OldValue = (GlobalSetupFlags & PSPGF_NONINTERACTIVE);
+    pSetupModifyGlobalFlags(PSPGF_NONINTERACTIVE,
+                            NonInteractiveFlag ? PSPGF_NONINTERACTIVE : 0);
+
+    return OldValue;
+}
 
 /***********************************************************************
  *              AssertFail  (SETUPAPI.@)
diff --git a/dll/win32/setupapi/setupapi.spec b/dll/win32/setupapi/setupapi.spec
index 527f4fd42b..99de0fca82 100644
--- a/dll/win32/setupapi/setupapi.spec
+++ b/dll/win32/setupapi/setupapi.spec
@@ -423,7 +423,7 @@
 @ stdcall SetupGetLineTextW(ptr long wstr wstr ptr long ptr)
 @ stdcall SetupGetMultiSzFieldA(ptr long ptr long ptr)
 @ stdcall SetupGetMultiSzFieldW(ptr long ptr long ptr)
-@ stub SetupGetNonInteractiveMode
+@ stdcall SetupGetNonInteractiveMode()
 @ stdcall SetupGetSourceFileLocationA(ptr ptr str ptr ptr long ptr)
 @ stdcall SetupGetSourceFileLocationW(ptr ptr wstr ptr ptr long ptr)
 @ stub SetupGetSourceFileSizeA
diff --git a/dll/win32/setupapi/stubs.c b/dll/win32/setupapi/stubs.c
index 48244b7e6e..c1c6e883b2 100644
--- a/dll/win32/setupapi/stubs.c
+++ b/dll/win32/setupapi/stubs.c
@@ -103,13 +103,6 @@ WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInterfaceAlias(IN 
HDEVINFO  DeviceInfoSe
     return FALSE;
 }
 
-WINSETUPAPI BOOL WINAPI SetupSetNonInteractiveMode(BOOL NonInteractiveFlag)
-{
-    FIXME("(%d) stub\n", NonInteractiveFlag);
-    SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
-    return FALSE;
-}
-
 /***********************************************************************
  *      SetupVerifyInfFileA(SETUPAPI.@)
  */

Reply via email to