Eric Pouech : dbghelp: Correctly return flags in SYMBOL_INFO structure for local variables stored in a register .

Alexandre Julliard julliard at winehq.org
Tue Jan 3 12:52:53 CST 2012


Module: wine
Branch: master
Commit: 28bb6f954a1207f669f37b327cff69821c635ab6
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=28bb6f954a1207f669f37b327cff69821c635ab6

Author: Eric Pouech <eric.pouech at orange.fr>
Date:   Mon Jan  2 21:28:04 2012 +0100

dbghelp: Correctly return flags in SYMBOL_INFO structure for local variables stored in a register.

---

 dlls/dbghelp/symbol.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/dbghelp/symbol.c b/dlls/dbghelp/symbol.c
index add3a1a..d9227ea 100644
--- a/dlls/dbghelp/symbol.c
+++ b/dlls/dbghelp/symbol.c
@@ -690,6 +690,7 @@ static void symt_fill_sym_info(struct module_pair* pair,
                 sym_info->Flags |= SYMFLAG_PARAMETER;
                 /* fall through */
             case DataIsLocal:
+                sym_info->Flags |= SYMFLAG_LOCAL;
                 {
                     struct location loc = data->u.var;
 
@@ -712,7 +713,6 @@ static void symt_fill_sym_info(struct module_pair* pair,
                     {
                     case loc_error:
                         /* for now we report error cases as a negative register number */
-                        sym_info->Flags |= SYMFLAG_LOCAL;
                         /* fall through */
                     case loc_register:
                         sym_info->Flags |= SYMFLAG_REGISTER;
@@ -720,7 +720,7 @@ static void symt_fill_sym_info(struct module_pair* pair,
                         sym_info->Address = 0;
                         break;
                     case loc_regrel:
-                        sym_info->Flags |= SYMFLAG_LOCAL | SYMFLAG_REGREL;
+                        sym_info->Flags |= SYMFLAG_REGREL;
                         sym_info->Register = loc.reg;
                         if (loc.reg == CV_REG_NONE || (int)loc.reg < 0 /* error */)
                             FIXME("suspicious register value %x\n", loc.reg);




More information about the wine-cvs mailing list