Added patch for stub of ntdll.RtlSetHeapInformation.

This commit is contained in:
Sebastian Lackner
2014-12-18 23:26:56 +01:00
parent d2c32c103a
commit f6749f92de
5 changed files with 91 additions and 1 deletions

View File

@@ -0,0 +1,74 @@
From 74219272ffbf828d22c52f68a00720d8f4ab12b7 Mon Sep 17 00:00:00 2001
From: Sergey Kalinichev <kalinichev.so.0@gmail.com>
Date: Thu, 18 Dec 2014 23:03:58 +0400
Subject: ntdll: Add stub for RtlSetHeapInformation.
---
dlls/kernel32/heap.c | 5 +++--
dlls/ntdll/heap.c | 10 ++++++++++
dlls/ntdll/ntdll.spec | 2 +-
include/winternl.h | 1 +
4 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/dlls/kernel32/heap.c b/dlls/kernel32/heap.c
index 9037f8e..cac73ec 100644
--- a/dlls/kernel32/heap.c
+++ b/dlls/kernel32/heap.c
@@ -296,8 +296,9 @@ BOOL WINAPI HeapQueryInformation( HANDLE heap, HEAP_INFORMATION_CLASS info_class
BOOL WINAPI HeapSetInformation( HANDLE heap, HEAP_INFORMATION_CLASS infoclass, PVOID info, SIZE_T size)
{
- FIXME("%p %d %p %ld\n", heap, infoclass, info, size );
- return TRUE;
+ NTSTATUS ret = RtlSetHeapInformation( heap, infoclass, info, size );
+ if (ret) SetLastError( RtlNtStatusToDosError(ret) );
+ return !ret;
}
/*
diff --git a/dlls/ntdll/heap.c b/dlls/ntdll/heap.c
index 3bb7a11..4537689 100644
--- a/dlls/ntdll/heap.c
+++ b/dlls/ntdll/heap.c
@@ -2252,3 +2252,13 @@ NTSTATUS WINAPI RtlQueryHeapInformation( HANDLE heap, HEAP_INFORMATION_CLASS inf
return STATUS_INVALID_INFO_CLASS;
}
}
+
+/***********************************************************************
+ * RtlSetHeapInformation (NTDLL.@)
+ */
+NTSTATUS WINAPI RtlSetHeapInformation( HANDLE heap, HEAP_INFORMATION_CLASS info_class,
+ PVOID info, SIZE_T size )
+{
+ FIXME("%p %d %p %ld stub\n", heap, info_class, info, size);
+ return STATUS_SUCCESS;
+}
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index 7e95969..791b66e 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -847,7 +847,7 @@
@ stdcall RtlSetDaclSecurityDescriptor(ptr long ptr long)
@ stdcall RtlSetEnvironmentVariable(ptr ptr ptr)
@ stdcall RtlSetGroupSecurityDescriptor(ptr ptr long)
-# @ stub RtlSetHeapInformation
+@ stdcall RtlSetHeapInformation(ptr long ptr long)
@ stub RtlSetInformationAcl
@ stdcall RtlSetIoCompletionCallback(long ptr long)
@ stdcall RtlSetLastWin32Error(long)
diff --git a/include/winternl.h b/include/winternl.h
index 5a27f94..8ba1e89 100644
--- a/include/winternl.h
+++ b/include/winternl.h
@@ -2509,6 +2509,7 @@ NTSYSAPI NTSTATUS WINAPI RtlSetDaclSecurityDescriptor(PSECURITY_DESCRIPTOR,BOOL
NTSYSAPI NTSTATUS WINAPI RtlSetEnvironmentVariable(PWSTR*,PUNICODE_STRING,PUNICODE_STRING);
NTSYSAPI NTSTATUS WINAPI RtlSetOwnerSecurityDescriptor(PSECURITY_DESCRIPTOR,PSID,BOOLEAN);
NTSYSAPI NTSTATUS WINAPI RtlSetGroupSecurityDescriptor(PSECURITY_DESCRIPTOR,PSID,BOOLEAN);
+NTSYSAPI NTSTATUS WINAPI RtlSetHeapInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T);
NTSYSAPI NTSTATUS WINAPI RtlSetIoCompletionCallback(HANDLE,PRTL_OVERLAPPED_COMPLETION_ROUTINE,ULONG);
NTSYSAPI void WINAPI RtlSetLastWin32Error(DWORD);
NTSYSAPI void WINAPI RtlSetLastWin32ErrorAndNtStatusFromNtStatus(NTSTATUS);
--
2.1.3

View File

@@ -0,0 +1 @@
Fixes: Add stub for RtlSetHeapInformation