Eric Pouech : dbghelp: Generalize helper to get a string from an ADDRESS64.
Alexandre Julliard
julliard at winehq.org
Tue Dec 22 09:59:01 CST 2009
Module: wine
Branch: master
Commit: 2d85d5c2355ab53f1294646abdfdf4a60a48246a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2d85d5c2355ab53f1294646abdfdf4a60a48246a
Author: Eric Pouech <eric.pouech at orange.fr>
Date: Tue Dec 22 14:20:59 2009 +0100
dbghelp: Generalize helper to get a string from an ADDRESS64.
---
dlls/dbghelp/dbghelp.c | 18 ++++++++++++++++++
dlls/dbghelp/dbghelp_private.h | 1 +
dlls/dbghelp/stack.c | 18 ------------------
3 files changed, 19 insertions(+), 18 deletions(-)
diff --git a/dlls/dbghelp/dbghelp.c b/dlls/dbghelp/dbghelp.c
index 1fe829a..8381735 100644
--- a/dlls/dbghelp/dbghelp.c
+++ b/dlls/dbghelp/dbghelp.c
@@ -133,6 +133,24 @@ void* fetch_buffer(struct process* pcs, unsigned size)
return pcs->buffer;
}
+const char* wine_dbgstr_addr(const ADDRESS64* addr)
+{
+ if (!addr) return "(null)";
+ switch (addr->Mode)
+ {
+ case AddrModeFlat:
+ return wine_dbg_sprintf("flat<%s>", wine_dbgstr_longlong(addr->Offset));
+ case AddrMode1616:
+ return wine_dbg_sprintf("1616<%04x:%04x>", addr->Segment, (DWORD)addr->Offset);
+ case AddrMode1632:
+ return wine_dbg_sprintf("1632<%04x:%08x>", addr->Segment, (DWORD)addr->Offset);
+ case AddrModeReal:
+ return wine_dbg_sprintf("real<%04x:%04x>", addr->Segment, (DWORD)addr->Offset);
+ default:
+ return "unknown";
+ }
+}
+
/******************************************************************
* SymSetSearchPathW (DBGHELP.@)
*
diff --git a/dlls/dbghelp/dbghelp_private.h b/dlls/dbghelp/dbghelp_private.h
index b793d14..538086f 100644
--- a/dlls/dbghelp/dbghelp_private.h
+++ b/dlls/dbghelp/dbghelp_private.h
@@ -425,6 +425,7 @@ extern HANDLE hMsvcrt;
extern BOOL validate_addr64(DWORD64 addr);
extern BOOL pcs_callback(const struct process* pcs, ULONG action, void* data);
extern void* fetch_buffer(struct process* pcs, unsigned size);
+extern const char* wine_dbgstr_addr(const ADDRESS64* addr);
/* crc32.c */
extern DWORD calc_crc32(int fd);
diff --git a/dlls/dbghelp/stack.c b/dlls/dbghelp/stack.c
index 82b38cc..f83d35c 100644
--- a/dlls/dbghelp/stack.c
+++ b/dlls/dbghelp/stack.c
@@ -38,24 +38,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(dbghelp);
enum st_mode {stm_start, stm_32bit, stm_16bit, stm_done};
-static const char* wine_dbgstr_addr(const ADDRESS64* addr)
-{
- if (!addr) return "(null)";
- switch (addr->Mode)
- {
- case AddrModeFlat:
- return wine_dbg_sprintf("flat<%s>", wine_dbgstr_longlong(addr->Offset));
- case AddrMode1616:
- return wine_dbg_sprintf("1616<%04x:%04x>", addr->Segment, (DWORD)addr->Offset);
- case AddrMode1632:
- return wine_dbg_sprintf("1632<%04x:%08x>", addr->Segment, (DWORD)addr->Offset);
- case AddrModeReal:
- return wine_dbg_sprintf("real<%04x:%04x>", addr->Segment, (DWORD)addr->Offset);
- default:
- return "unknown";
- }
-}
-
static DWORD64 WINAPI addr_to_linear(HANDLE hProcess, HANDLE hThread, ADDRESS64* addr)
{
LDT_ENTRY le;
More information about the wine-cvs
mailing list