Jon Griffiths : dbghelp: Implement SymEnumerateSymbols64.
Alexandre Julliard
julliard at winehq.org
Sat Jun 21 05:38:40 CDT 2008
Module: wine
Branch: master
Commit: c6837531857e71f329aeacb53432309559a0cb3e
URL: http://source.winehq.org/git/wine.git/?a=commit;h=c6837531857e71f329aeacb53432309559a0cb3e
Author: Jon Griffiths <jon_p_griffiths at yahoo.com>
Date: Thu Jun 19 20:02:44 2008 -0700
dbghelp: Implement SymEnumerateSymbols64.
---
dlls/dbghelp/dbghelp.spec | 2 +-
dlls/dbghelp/symbol.c | 27 +++++++++++++++++++++++++++
2 files changed, 28 insertions(+), 1 deletions(-)
diff --git a/dlls/dbghelp/dbghelp.spec b/dlls/dbghelp/dbghelp.spec
index d29b880..b95a9e7 100644
--- a/dlls/dbghelp/dbghelp.spec
+++ b/dlls/dbghelp/dbghelp.spec
@@ -48,7 +48,7 @@
@ stdcall SymEnumerateModules64(long ptr ptr)
@ stdcall SymEnumerateModulesW64(long ptr ptr)
@ stdcall SymEnumerateSymbols(long long ptr ptr)
-@ stub SymEnumerateSymbols64
+@ stdcall SymEnumerateSymbols64(long double ptr ptr)
@ stub SymEnumerateSymbolsW
@ stub SymEnumerateSymbolsW64
@ stub SymFindDebugInfoFile
diff --git a/dlls/dbghelp/symbol.c b/dlls/dbghelp/symbol.c
index 1d7edb8..f4f2d11 100644
--- a/dlls/dbghelp/symbol.c
+++ b/dlls/dbghelp/symbol.c
@@ -1055,6 +1055,33 @@ BOOL WINAPI SymEnumerateSymbols(HANDLE hProcess, DWORD BaseOfDll,
return SymEnumSymbols(hProcess, BaseOfDll, NULL, sym_enumerate_cb, &se);
}
+struct sym_enumerate64
+{
+ void* ctx;
+ PSYM_ENUMSYMBOLS_CALLBACK64 cb;
+};
+
+static BOOL CALLBACK sym_enumerate_cb64(PSYMBOL_INFO syminfo, ULONG size, void* ctx)
+{
+ struct sym_enumerate64* se = (struct sym_enumerate64*)ctx;
+ return (se->cb)(syminfo->Name, syminfo->Address, syminfo->Size, se->ctx);
+}
+
+/***********************************************************************
+ * SymEnumerateSymbols64 (DBGHELP.@)
+ */
+BOOL WINAPI SymEnumerateSymbols64(HANDLE hProcess, DWORD64 BaseOfDll,
+ PSYM_ENUMSYMBOLS_CALLBACK64 EnumSymbolsCallback,
+ PVOID UserContext)
+{
+ struct sym_enumerate64 se;
+
+ se.ctx = UserContext;
+ se.cb = EnumSymbolsCallback;
+
+ return SymEnumSymbols(hProcess, BaseOfDll, NULL, sym_enumerate_cb64, &se);
+}
+
/******************************************************************
* SymFromAddr (DBGHELP.@)
*
More information about the wine-cvs
mailing list