Alexandre Julliard : winedump: Ordinal functions can be forwards too.
Alexandre Julliard
julliard at winehq.org
Fri Sep 25 10:24:39 CDT 2009
Module: wine
Branch: master
Commit: bb223b789b02ef9dda2a57a92d4d5bdd607f00c1
URL: http://source.winehq.org/git/wine.git/?a=commit;h=bb223b789b02ef9dda2a57a92d4d5bdd607f00c1
Author: Alexandre Julliard <julliard at winehq.org>
Date: Thu Sep 24 22:36:45 2009 +0200
winedump: Ordinal functions can be forwards too.
---
tools/winedump/pe.c | 18 ++++++++----------
1 files changed, 8 insertions(+), 10 deletions(-)
diff --git a/tools/winedump/pe.c b/tools/winedump/pe.c
index 5ff8a16..077109d 100644
--- a/tools/winedump/pe.c
+++ b/tools/winedump/pe.c
@@ -492,9 +492,7 @@ static void dump_dir_exported_functions(void)
pFunc = RVA(exportDir->AddressOfFunctions, exportDir->NumberOfFunctions * sizeof(DWORD));
if (!pFunc) {printf("Can't grab functions' address table\n"); return;}
pName = RVA(exportDir->AddressOfNames, exportDir->NumberOfNames * sizeof(DWORD));
- if (!pName) {printf("Can't grab functions' name table\n"); return;}
pOrdl = RVA(exportDir->AddressOfNameOrdinals, exportDir->NumberOfNames * sizeof(WORD));
- if (!pOrdl) {printf("Can't grab functions' ordinal table\n"); return;}
funcs = calloc( exportDir->NumberOfFunctions, sizeof(*funcs) );
if (!funcs) fatal("no memory");
@@ -506,15 +504,15 @@ static void dump_dir_exported_functions(void)
if (!pFunc[i]) continue;
printf(" %08X %5u ", pFunc[i], exportDir->Base + i);
if (funcs[i])
- {
printf("%s", get_symbol_str((const char*)RVA(funcs[i], sizeof(DWORD))));
- /* check for forwarded function */
- if ((const char *)RVA(pFunc[i],1) >= (const char *)exportDir &&
- (const char *)RVA(pFunc[i],1) < (const char *)exportDir + size)
- printf(" (-> %s)", (const char *)RVA(pFunc[i],1));
- printf("\n");
- }
- else printf("<by ordinal>\n");
+ else
+ printf("<by ordinal>");
+
+ /* check for forwarded function */
+ if ((const char *)RVA(pFunc[i],1) >= (const char *)exportDir &&
+ (const char *)RVA(pFunc[i],1) < (const char *)exportDir + size)
+ printf(" (-> %s)", (const char *)RVA(pFunc[i],1));
+ printf("\n");
}
free(funcs);
printf("\n");
More information about the wine-cvs
mailing list