From 3b69b6baae370fa213062af2754e2db8ba999e7a Mon Sep 17 00:00:00 2001 From: Sam Hocevar Date: Mon, 20 Sep 2010 23:48:51 +0000 Subject: [PATCH] Divert AttachConsole() and AllocConsole() for debugging purposes. --- src/libzzuf/sys.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/libzzuf/sys.c b/src/libzzuf/sys.c index 37fe395..bd57141 100644 --- a/src/libzzuf/sys.c +++ b/src/libzzuf/sys.c @@ -47,6 +47,20 @@ HINSTANCE WINAPI LoadLibraryA_new(LPCSTR path) fprintf(stderr, "Now the real LoadLibraryA was called\n"); return ret; } + +BOOL (WINAPI *AllocConsole_orig)(void); +BOOL WINAPI AllocConsole_new(void) +{ + fprintf(stderr, "Allocating console\n"); + return AllocConsole_orig(); +} + +BOOL (WINAPI *AttachConsole_orig)(DWORD); +BOOL WINAPI AttachConsole_new(DWORD d) +{ + fprintf(stderr, "Attaching console\n"); + return AttachConsole_orig(d); +} #endif void _zz_sys_init(void) @@ -80,6 +94,8 @@ static void insert_funcs(void *module) diversions[] = { { "kernel32.dll", "LoadLibraryA", &LoadLibraryA_orig, LoadLibraryA_new }, + { "kernel32.dll", "AllocConsole", &AllocConsole_orig, AllocConsole_new }, + { "kernel32.dll", "AttachConsole", &AttachConsole_orig, AttachConsole_new }, }; unsigned long dummy;