On Aug 27, 2013, at 3:08 PM, André Hentschel wrote:
Hi, at [1] i noticed that dylibs are printed as PEs. This intents to fix that, but i have no Mac, could someone please review/test?
[1] http://test.winehq.org/data/8ef3a142263e6db11f1514f77b3de84c8b08d7a0/mac_fg-...
I generally agree with Ken's comments. In addition:
diff --git a/dlls/dbghelp/module.c b/dlls/dbghelp/module.c index 6bea436..41fa7e6 100644 --- a/dlls/dbghelp/module.c +++ b/dlls/dbghelp/module.c @@ -33,6 +33,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(dbghelp);
const WCHAR S_ElfW[] = {'<','e','l','f','>','\0'}; +const WCHAR S_MachoW[] = {'<','m','a','c','h','o','>','\0'};
Personally, I'd prefer: const WCHAR S_MachOW[] = {'<','m','a','c','h','-','o','>','\0'};
diff --git a/programs/winedbg/info.c b/programs/winedbg/info.c index c0b86ba..c2c7c08 100644 --- a/programs/winedbg/info.c +++ b/programs/winedbg/info.c @@ -253,8 +258,11 @@ void info_win32_module(DWORD64 base) break; } if (j < im.num_used) continue;
if (strstr(im.mi[i].ModuleName, ".so") || strchr(im.mi[i].ModuleName, '<'))
if (strstr(im.mi[i].ModuleName, ".so") || strstr(im.mi[i].ModuleName, "<elf>") ||
strstr(im.mi[i].ModuleName, "<wine-loader>"))
The 'wine' binary (the module whose name is "<wine-loader>") is a Mach-O file, too, on Mac OS.
Chip