ntdll: Add stub for RtlSetHeapInformation (try 2)
Sergey Kalinichev
kalinichev.so.0 at gmail.com
Fri Dec 19 07:50:49 CST 2014
This helps some applications to launch.
Forgot to add the RtlSetHeapInformation into winternl.h
-------------- next part --------------
From 0080bd0a53e96c58d075aafffc654b589f36416e Mon Sep 17 00:00:00 2001
From: Sergey Kalinichev <kalinichev.so.0 at gmail.com>
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
More information about the wine-patches
mailing list