When a symbol name already contains a module name, we shouldn't search
in other modules.
This commit is contained in:
parent
6cd44bc89d
commit
67e4edc522
|
@ -232,9 +232,16 @@ enum sym_get_lval symbol_get_lvalue(const char* name, const int lineno,
|
||||||
sgv.bp_disp = bp_disp ? TRUE : FALSE;
|
sgv.bp_disp = bp_disp ? TRUE : FALSE;
|
||||||
sgv.do_thunks = DBG_IVAR(AlwaysShowThunks);
|
sgv.do_thunks = DBG_IVAR(AlwaysShowThunks);
|
||||||
|
|
||||||
buffer[0] = '*';
|
if (strchr(name, '!'))
|
||||||
buffer[1] = '!';
|
{
|
||||||
strcpy(&buffer[2], name);
|
strcpy(buffer, name);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
buffer[0] = '*';
|
||||||
|
buffer[1] = '!';
|
||||||
|
strcpy(&buffer[2], name);
|
||||||
|
}
|
||||||
|
|
||||||
/* this is a wine specific options to return also ELF modules in the
|
/* this is a wine specific options to return also ELF modules in the
|
||||||
* enumeration
|
* enumeration
|
||||||
|
@ -248,8 +255,20 @@ enum sym_get_lval symbol_get_lvalue(const char* name, const int lineno,
|
||||||
|
|
||||||
if (!sgv.num && (name[0] != '_'))
|
if (!sgv.num && (name[0] != '_'))
|
||||||
{
|
{
|
||||||
buffer[2] = '_';
|
char* ptr = strchr(name, '!');
|
||||||
strcpy(&buffer[3], name);
|
|
||||||
|
if (ptr++)
|
||||||
|
{
|
||||||
|
memmove(ptr + 1, ptr, strlen(ptr));
|
||||||
|
*ptr = '_';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
buffer[0] = '*';
|
||||||
|
buffer[1] = '!';
|
||||||
|
buffer[2] = '_';
|
||||||
|
strcpy(&buffer[3], name);
|
||||||
|
}
|
||||||
if (!SymEnumSymbols(dbg_curr_process->handle, 0, buffer, sgv_cb, (void*)&sgv))
|
if (!SymEnumSymbols(dbg_curr_process->handle, 0, buffer, sgv_cb, (void*)&sgv))
|
||||||
{
|
{
|
||||||
SymSetOptions(opt);
|
SymSetOptions(opt);
|
||||||
|
|
Loading…
Reference in New Issue