Alexandre Julliard : winedbg: Add wrappers for Read/ WriteProcessMemory to fix the mingw build.
Alexandre Julliard
julliard at winehq.org
Fri Jun 5 08:57:00 CDT 2009
Module: wine
Branch: master
Commit: 8d0cb61bc7760c4ab254c3a5bb751bded3a6f4ed
URL: http://source.winehq.org/git/wine.git/?a=commit;h=8d0cb61bc7760c4ab254c3a5bb751bded3a6f4ed
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Jun 5 15:16:14 2009 +0200
winedbg: Add wrappers for Read/WriteProcessMemory to fix the mingw build.
---
programs/winedbg/debugger.h | 6 +++---
programs/winedbg/gdbproxy.c | 16 ++++++++++++++--
programs/winedbg/tgt_active.c | 23 ++++++++++++++++++++---
programs/winedbg/tgt_minidump.c | 10 +++++-----
programs/winedbg/tgt_module.c | 10 +++++-----
5 files changed, 47 insertions(+), 18 deletions(-)
diff --git a/programs/winedbg/debugger.h b/programs/winedbg/debugger.h
index e793543..0c17fb8 100644
--- a/programs/winedbg/debugger.h
+++ b/programs/winedbg/debugger.h
@@ -237,9 +237,9 @@ struct dbg_process
struct be_process_io
{
BOOL (*close_process)(struct dbg_process*, BOOL);
- BOOL (WINAPI *read)(HANDLE, const void*, void*, SIZE_T, SIZE_T*);
- BOOL (WINAPI *write)(HANDLE, void*, const void*, SIZE_T, SIZE_T*);
- BOOL (WINAPI *get_selector)(HANDLE, DWORD, LDT_ENTRY*);
+ BOOL (*read)(HANDLE, const void*, void*, SIZE_T, SIZE_T*);
+ BOOL (*write)(HANDLE, void*, const void*, SIZE_T, SIZE_T*);
+ BOOL (*get_selector)(HANDLE, DWORD, LDT_ENTRY*);
};
extern struct dbg_process* dbg_curr_process;
diff --git a/programs/winedbg/gdbproxy.c b/programs/winedbg/gdbproxy.c
index 680caea..8afabe4 100644
--- a/programs/winedbg/gdbproxy.c
+++ b/programs/winedbg/gdbproxy.c
@@ -111,11 +111,23 @@ struct gdb_context
unsigned long wine_segs[3]; /* load addresses of the ELF wine exec segments (text, bss and data) */
};
+static BOOL tgt_process_gdbproxy_read(HANDLE hProcess, const void* addr,
+ void* buffer, SIZE_T len, SIZE_T* rlen)
+{
+ return ReadProcessMemory( hProcess, addr, buffer, len, rlen );
+}
+
+static BOOL tgt_process_gdbproxy_write(HANDLE hProcess, void* addr,
+ const void* buffer, SIZE_T len, SIZE_T* wlen)
+{
+ return WriteProcessMemory( hProcess, addr, buffer, len, wlen );
+}
+
static struct be_process_io be_process_gdbproxy_io =
{
NULL, /* we shouldn't use close_process() in gdbproxy */
- ReadProcessMemory,
- WriteProcessMemory
+ tgt_process_gdbproxy_read,
+ tgt_process_gdbproxy_write
};
/* =============================================== *
diff --git a/programs/winedbg/tgt_active.c b/programs/winedbg/tgt_active.c
index 235d43b..ff57f46 100644
--- a/programs/winedbg/tgt_active.c
+++ b/programs/winedbg/tgt_active.c
@@ -1004,10 +1004,27 @@ static BOOL tgt_process_active_close_process(struct dbg_process* pcs, BOOL kill)
return TRUE;
}
+static BOOL tgt_process_active_read(HANDLE hProcess, const void* addr,
+ void* buffer, SIZE_T len, SIZE_T* rlen)
+{
+ return ReadProcessMemory( hProcess, addr, buffer, len, rlen );
+}
+
+static BOOL tgt_process_active_write(HANDLE hProcess, void* addr,
+ const void* buffer, SIZE_T len, SIZE_T* wlen)
+{
+ return WriteProcessMemory( hProcess, addr, buffer, len, wlen );
+}
+
+static BOOL tgt_process_active_get_selector(HANDLE hThread, DWORD sel, LDT_ENTRY* le)
+{
+ return GetThreadSelectorEntry( hThread, sel, le );
+}
+
static struct be_process_io be_process_active_io =
{
tgt_process_active_close_process,
- ReadProcessMemory,
- WriteProcessMemory,
- GetThreadSelectorEntry,
+ tgt_process_active_read,
+ tgt_process_active_write,
+ tgt_process_active_get_selector
};
diff --git a/programs/winedbg/tgt_minidump.c b/programs/winedbg/tgt_minidump.c
index 9b40a1c..5d22bb6 100644
--- a/programs/winedbg/tgt_minidump.c
+++ b/programs/winedbg/tgt_minidump.c
@@ -84,8 +84,8 @@ static inline struct tgt_process_minidump_data* private_data(struct dbg_process*
return pcs->pio_data;
}
-static BOOL WINAPI tgt_process_minidump_read(HANDLE hProcess, const void* addr,
- void* buffer, SIZE_T len, SIZE_T* rlen)
+static BOOL tgt_process_minidump_read(HANDLE hProcess, const void* addr,
+ void* buffer, SIZE_T len, SIZE_T* rlen)
{
void* stream;
@@ -125,8 +125,8 @@ static BOOL WINAPI tgt_process_minidump_read(HANDLE hProcess, const void* addr,
return FALSE;
}
-static BOOL WINAPI tgt_process_minidump_write(HANDLE hProcess, void* addr,
- const void* buffer, SIZE_T len, SIZE_T* wlen)
+static BOOL tgt_process_minidump_write(HANDLE hProcess, void* addr,
+ const void* buffer, SIZE_T len, SIZE_T* wlen)
{
return FALSE;
}
@@ -447,7 +447,7 @@ static BOOL tgt_process_minidump_close_process(struct dbg_process* pcs, BOOL kil
return TRUE;
}
-static BOOL WINAPI tgt_process_minidump_get_selector(HANDLE hThread, DWORD sel, LDT_ENTRY* le)
+static BOOL tgt_process_minidump_get_selector(HANDLE hThread, DWORD sel, LDT_ENTRY* le)
{
/* so far, pretend all selectors are valid, and mapped to a 32bit flat address space */
memset(le, 0, sizeof(*le));
diff --git a/programs/winedbg/tgt_module.c b/programs/winedbg/tgt_module.c
index 71a2449..44e3c9f 100644
--- a/programs/winedbg/tgt_module.c
+++ b/programs/winedbg/tgt_module.c
@@ -33,14 +33,14 @@
static struct be_process_io be_process_module_io;
-static BOOL WINAPI tgt_process_module_read(HANDLE hProcess, const void* addr,
- void* buffer, SIZE_T len, SIZE_T* rlen)
+static BOOL tgt_process_module_read(HANDLE hProcess, const void* addr,
+ void* buffer, SIZE_T len, SIZE_T* rlen)
{
return FALSE;
}
-static BOOL WINAPI tgt_process_module_write(HANDLE hProcess, void* addr,
- const void* buffer, SIZE_T len, SIZE_T* wlen)
+static BOOL tgt_process_module_write(HANDLE hProcess, void* addr,
+ const void* buffer, SIZE_T len, SIZE_T* wlen)
{
return FALSE;
}
@@ -102,7 +102,7 @@ static BOOL tgt_process_module_close_process(struct dbg_process* pcs, BOOL kill)
return TRUE;
}
-static BOOL WINAPI tgt_process_module_get_selector(HANDLE hThread, DWORD sel, LDT_ENTRY* le)
+static BOOL tgt_process_module_get_selector(HANDLE hThread, DWORD sel, LDT_ENTRY* le)
{
return FALSE;
}
More information about the wine-cvs
mailing list