Module: wine Branch: master Commit: dbe0610bb4d0720677a0e83f0735c5f87c05604f URL: http://source.winehq.org/git/wine.git/?a=commit;h=dbe0610bb4d0720677a0e83f07...
Author: Eric Pouech eric.pouech@wanadoo.fr Date: Sun Mar 4 17:04:13 2007 +0100
winedbg: Fix printing function signature type for circular references on return type.
---
programs/winedbg/types.c | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/programs/winedbg/types.c b/programs/winedbg/types.c index 939e5df..bc3373b 100644 --- a/programs/winedbg/types.c +++ b/programs/winedbg/types.c @@ -676,8 +676,16 @@ int types_print_type(const struct dbg_type* type, BOOL details) break; case SymTagFunctionType: types_get_info(type, TI_GET_TYPE, &subtype.id); - subtype.module = type->module; - types_print_type(&subtype, FALSE); + /* is the returned type the same object as function sig itself ? */ + if (subtype.id != type->id) + { + subtype.module = type->module; + types_print_type(&subtype, FALSE); + } + else + { + dbg_printf("<ret_type=self>"); + } dbg_printf(" (*%s)(", name); if (types_get_info(type, TI_GET_CHILDRENCOUNT, &count)) {