a little test shows it returns some unknown status on my xp lap[top:
0x7c927f00, so likely not STATUS_SUCCESS.

diff --git a/dlls/ntdll/tests/rtl.c b/dlls/ntdll/tests/rtl.c
index 59871de..588e33e 100644
--- a/dlls/ntdll/tests/rtl.c
+++ b/dlls/ntdll/tests/rtl.c
@@ -66,6 +66,7 @@ static RTL_HANDLE * (WINAPI * pRtlAlloca
 static BOOLEAN   (WINAPI * pRtlFreeHandle)(RTL_HANDLE_TABLE *, RTL_HANDLE *);
 static NTSTATUS  (WINAPI *pRtlAllocateAndInitializeSid)(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID*);
 static NTSTATUS  (WINAPI *pRtlFreeSid)(PSID);
+static NTSTATUS  (WINAPI *pRtlDllShutdownInProgress)(void);
 #define LEN 16
 static const char* src_src = "This is a test!"; /* 16 bytes long, incl NUL */
 static ULONG src_aligned_block[4];
@@ -97,6 +98,7 @@ static void InitFunctionPtrs(void)
        pRtlFreeHandle = (void *)GetProcAddress(hntdll, "RtlFreeHandle");
         pRtlAllocateAndInitializeSid = (void *)GetProcAddress(hntdll, "RtlAllocateAndInitializeSid");
         pRtlFreeSid = (void *)GetProcAddress(hntdll, "RtlFreeSid");
+        pRtlDllShutdownInProgress = (void *)GetProcAddress(hntdll, "RtlDllShutdownInProgress");
     }
     strcpy((char*)src_aligned_block, src_src);
     ok(strlen(src) == 15, "Source must be 16 bytes long!\n");
@@ -848,6 +850,13 @@ static void test_RtlComputeCrc32(void)
   ok(crc == 0x40861dc2,"Expected 0x40861dc2, got %8x\n", crc);
 }

+static void test_RtlDllShutdownInProgress(void)
+{
+  DWORD ret;
+
+  ret = pRtlDllShutdownInProgress();
+  ok(0x7c927f00 == ret,"Expected 0x7c927f00, got %08x\n", ret);
+}

 typedef struct MY_HANDLE
 {
@@ -933,4 +942,6 @@ START_TEST(rtl)
         test_HandleTables();
     if (pRtlAllocateAndInitializeSid)
         test_RtlAllocateAndInitializeSid();
+    if (pRtlDllShutdownInProgress)
+        test_RtlDllShutdownInProgress();
 }

Send instant messages to your online friends http://uk.messenger.yahoo.com



Reply via email to