From: Sergey Kalinichev Subject: ntdll: Add stub for RtlSetHeapInformation (try 2) Message-Id: Date: Fri, 19 Dec 2014 17:50:49 +0400 This helps some applications to launch. Forgot to add the RtlSetHeapInformation into winternl.h From 0080bd0a53e96c58d075aafffc654b589f36416e Mon Sep 17 00:00:00 2001 From: Sergey Kalinichev Date: Mon, 15 Dec 2014 21:15:07 +0400 Subject: ntdll: Add stub for RtlSetHeapInformation --- dlls/kernel32/heap.c | 5 +++-- dlls/ntdll/heap.c | 9 +++++++++ dlls/ntdll/ntdll.spec | 2 +- include/winternl.h | 1 + 4 files changed, 14 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..4ef44cf 100644 --- a/dlls/ntdll/heap.c +++ b/dlls/ntdll/heap.c @@ -2252,3 +2252,12 @@ 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..51de6e7 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(long 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..1a694da 100644 --- a/include/winternl.h +++ b/include/winternl.h @@ -2507,6 +2507,7 @@ NTSYSAPI NTSTATUS WINAPI RtlSetCurrentDirectory_U(const UNICODE_STRING*); NTSYSAPI void WINAPI RtlSetCurrentEnvironment(PWSTR, PWSTR*); NTSYSAPI NTSTATUS WINAPI RtlSetDaclSecurityDescriptor(PSECURITY_DESCRIPTOR,BOOLEAN,PACL,BOOLEAN); NTSYSAPI NTSTATUS WINAPI RtlSetEnvironmentVariable(PWSTR*,PUNICODE_STRING,PUNICODE_STRING); +NTSYSAPI NTSTATUS WINAPI RtlSetHeapInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T); NTSYSAPI NTSTATUS WINAPI RtlSetOwnerSecurityDescriptor(PSECURITY_DESCRIPTOR,PSID,BOOLEAN); NTSYSAPI NTSTATUS WINAPI RtlSetGroupSecurityDescriptor(PSECURITY_DESCRIPTOR,PSID,BOOLEAN); NTSYSAPI NTSTATUS WINAPI RtlSetIoCompletionCallback(HANDLE,PRTL_OVERLAPPED_COMPLETION_ROUTINE,ULONG); -- 2.1.1