Alexandre Julliard : ntdll: Add stubs for RtlAddFunctionTable and RtlDeleteFunctionTable.

Alexandre Julliard julliard at winehq.org
Fri Dec 4 09:11:26 CST 2009


Module: wine
Branch: master
Commit: 866db819b8684f9a11fe977de398221f292ead09
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=866db819b8684f9a11fe977de398221f292ead09

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Fri Dec  4 12:06:20 2009 +0100

ntdll: Add stubs for RtlAddFunctionTable and RtlDeleteFunctionTable.

---

 dlls/kernel32/kernel32.spec |    1 +
 dlls/ntdll/ntdll.spec       |    2 ++
 dlls/ntdll/signal_x86_64.c  |   20 ++++++++++++++++++++
 include/winnt.h             |    2 ++
 4 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
index aad5e79..bab25a0 100644
--- a/dlls/kernel32/kernel32.spec
+++ b/dlls/kernel32/kernel32.spec
@@ -924,6 +924,7 @@
 @ stdcall ResetWriteWatch(ptr long)
 @ stdcall RestoreLastError(long) ntdll.RtlRestoreLastWin32Error
 @ stdcall ResumeThread(long)
+@ cdecl -arch=x86_64 RtlAddFunctionTable(ptr long long) ntdll.RtlAddFunctionTable
 @ stdcall -register RtlCaptureContext(ptr) ntdll.RtlCaptureContext
 @ stdcall RtlCaptureStackBackTrace(long long ptr ptr) ntdll.RtlCaptureStackBackTrace
 @ stdcall RtlFillMemory(ptr long long) ntdll.RtlFillMemory
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index e7f298d..0b3ebef 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -408,6 +408,7 @@
 # @ stub RtlAddAuditAccessObjectAce
 # @ stub RtlAddCompoundAce
 # @ stub RtlAddRange
+@ cdecl -arch=x86_64 RtlAddFunctionTable(ptr long long)
 @ stdcall RtlAddRefActivationContext(ptr)
 # @ stub RtlAddRefMemoryStream
 @ stdcall RtlAddVectoredExceptionHandler(long ptr)
@@ -513,6 +514,7 @@
 @ stdcall RtlDeleteCriticalSection(ptr)
 @ stub RtlDeleteElementGenericTable
 @ stub RtlDeleteElementGenericTableAvl
+@ cdecl -arch=x86_64 RtlDeleteFunctionTable(ptr)
 @ stub RtlDeleteNoSplay
 @ stub RtlDeleteOwnersRanges
 @ stub RtlDeleteRange
diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c
index 94ec742..97a952e 100644
--- a/dlls/ntdll/signal_x86_64.c
+++ b/dlls/ntdll/signal_x86_64.c
@@ -2311,6 +2311,26 @@ void signal_init_process(void)
 
 
 /**********************************************************************
+ *              RtlAddFunctionTable   (NTDLL.@)
+ */
+BOOLEAN CDECL RtlAddFunctionTable( RUNTIME_FUNCTION *table, DWORD count, DWORD64 addr )
+{
+    FIXME( "%p %u %lx: stub\n", table, count, addr );
+    return FALSE;
+}
+
+
+/**********************************************************************
+ *              RtlDeleteFunctionTable   (NTDLL.@)
+ */
+BOOLEAN CDECL RtlDeleteFunctionTable( RUNTIME_FUNCTION *table )
+{
+    FIXME( "%p: stub\n", table );
+    return FALSE;
+}
+
+
+/**********************************************************************
  *              RtlLookupFunctionEntry   (NTDLL.@)
  */
 PRUNTIME_FUNCTION WINAPI RtlLookupFunctionEntry( ULONG64 pc, ULONG64 *base, UNWIND_HISTORY_TABLE *table )
diff --git a/include/winnt.h b/include/winnt.h
index fae8a45..e2d1d1a 100644
--- a/include/winnt.h
+++ b/include/winnt.h
@@ -1076,6 +1076,8 @@ typedef struct _KNONVOLATILE_CONTEXT_POINTERS
     } DUMMYUNIONNAME2;
 } KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
 
+BOOLEAN CDECL            RtlAddFunctionTable(RUNTIME_FUNCTION*,DWORD,DWORD64);
+BOOLEAN CDECL            RtlDeleteFunctionTable(RUNTIME_FUNCTION*);
 PRUNTIME_FUNCTION WINAPI RtlLookupFunctionEntry(DWORD64,DWORD64*,UNWIND_HISTORY_TABLE*);
 PVOID WINAPI             RtlVirtualUnwind(ULONG,ULONG64,ULONG64,RUNTIME_FUNCTION*,CONTEXT*,PVOID*,ULONG64*,KNONVOLATILE_CONTEXT_POINTERS*);
 




More information about the wine-cvs mailing list