mirror of
https://github.com/reactos/reactos.git
synced 2025-01-02 20:43:18 +00:00
Revert "[DBGHELP] set correct values in symt_fill_sym_info (SYMBOL_INFO)."
This reverts commit 6175044aed
.
This will be applied later through the winesync script
This commit is contained in:
parent
92cf32b433
commit
52fe276632
5 changed files with 12 additions and 26 deletions
|
@ -244,7 +244,6 @@ struct symt_public
|
||||||
struct symt symt;
|
struct symt symt;
|
||||||
struct hash_table_elt hash_elt;
|
struct hash_table_elt hash_elt;
|
||||||
struct symt* container; /* compiland */
|
struct symt* container; /* compiland */
|
||||||
BOOL is_function;
|
|
||||||
unsigned long address;
|
unsigned long address;
|
||||||
unsigned long size;
|
unsigned long size;
|
||||||
};
|
};
|
||||||
|
@ -756,9 +755,7 @@ extern struct symt_public*
|
||||||
symt_new_public(struct module* module,
|
symt_new_public(struct module* module,
|
||||||
struct symt_compiland* parent,
|
struct symt_compiland* parent,
|
||||||
const char* typename,
|
const char* typename,
|
||||||
BOOL is_function,
|
unsigned long address, unsigned size) DECLSPEC_HIDDEN;
|
||||||
unsigned long address,
|
|
||||||
unsigned size) DECLSPEC_HIDDEN;
|
|
||||||
extern struct symt_data*
|
extern struct symt_data*
|
||||||
symt_new_global_variable(struct module* module,
|
symt_new_global_variable(struct module* module,
|
||||||
struct symt_compiland* parent,
|
struct symt_compiland* parent,
|
||||||
|
|
|
@ -2072,7 +2072,6 @@ static BOOL codeview_snarf_public(const struct msc_debug_info* msc_dbg, const BY
|
||||||
{
|
{
|
||||||
symt_new_public(msc_dbg->module, compiland,
|
symt_new_public(msc_dbg->module, compiland,
|
||||||
terminate_string(&sym->public_v1.p_name),
|
terminate_string(&sym->public_v1.p_name),
|
||||||
sym->public_v1.symtype == SYMTYPE_FUNCTION,
|
|
||||||
codeview_get_address(msc_dbg, sym->public_v1.segment, sym->public_v1.offset), 1);
|
codeview_get_address(msc_dbg, sym->public_v1.segment, sym->public_v1.offset), 1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -2081,7 +2080,6 @@ static BOOL codeview_snarf_public(const struct msc_debug_info* msc_dbg, const BY
|
||||||
{
|
{
|
||||||
symt_new_public(msc_dbg->module, compiland,
|
symt_new_public(msc_dbg->module, compiland,
|
||||||
terminate_string(&sym->public_v2.p_name),
|
terminate_string(&sym->public_v2.p_name),
|
||||||
sym->public_v3.symtype == SYMTYPE_FUNCTION,
|
|
||||||
codeview_get_address(msc_dbg, sym->public_v2.segment, sym->public_v2.offset), 1);
|
codeview_get_address(msc_dbg, sym->public_v2.segment, sym->public_v2.offset), 1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -2091,7 +2089,6 @@ static BOOL codeview_snarf_public(const struct msc_debug_info* msc_dbg, const BY
|
||||||
{
|
{
|
||||||
symt_new_public(msc_dbg->module, compiland,
|
symt_new_public(msc_dbg->module, compiland,
|
||||||
sym->public_v3.name,
|
sym->public_v3.name,
|
||||||
sym->public_v3.symtype == SYMTYPE_FUNCTION,
|
|
||||||
codeview_get_address(msc_dbg, sym->public_v3.segment, sym->public_v3.offset), 1);
|
codeview_get_address(msc_dbg, sym->public_v3.segment, sym->public_v3.offset), 1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -2888,7 +2885,7 @@ static BOOL pdb_process_file(const struct process* pcs,
|
||||||
if (ret)
|
if (ret)
|
||||||
{
|
{
|
||||||
struct pdb_module_info* pdb_info = msc_dbg->module->format_info[DFI_PDB]->u.pdb_info;
|
struct pdb_module_info* pdb_info = msc_dbg->module->format_info[DFI_PDB]->u.pdb_info;
|
||||||
msc_dbg->module->module.SymType = SymPdb;
|
msc_dbg->module->module.SymType = SymCv;
|
||||||
if (pdb_info->pdb_files[0].kind == PDB_JG)
|
if (pdb_info->pdb_files[0].kind == PDB_JG)
|
||||||
msc_dbg->module->module.PdbSig = pdb_info->pdb_files[0].u.jg.timestamp;
|
msc_dbg->module->module.PdbSig = pdb_info->pdb_files[0].u.jg.timestamp;
|
||||||
else
|
else
|
||||||
|
|
|
@ -444,9 +444,9 @@ static BOOL pe_load_coff_symbol_table(struct module* module)
|
||||||
source_new(module, NULL, lastfilename));
|
source_new(module, NULL, lastfilename));
|
||||||
|
|
||||||
if (!(dbghelp_options & SYMOPT_NO_PUBLICS))
|
if (!(dbghelp_options & SYMOPT_NO_PUBLICS))
|
||||||
symt_new_public(module, compiland, name, FALSE,
|
symt_new_public(module, compiland, name,
|
||||||
module->module.BaseOfImage + sect[isym->SectionNumber - 1].VirtualAddress +
|
module->module.BaseOfImage + sect[isym->SectionNumber - 1].VirtualAddress +
|
||||||
isym->Value,
|
isym->Value,
|
||||||
1);
|
1);
|
||||||
}
|
}
|
||||||
naux = isym->NumberOfAuxSymbols + 1;
|
naux = isym->NumberOfAuxSymbols + 1;
|
||||||
|
@ -674,11 +674,11 @@ static BOOL pe_load_export_debug_info(const struct process* pcs, struct module*
|
||||||
#if 0
|
#if 0
|
||||||
/* Add start of DLL (better use the (yet unimplemented) Exe SymTag for this) */
|
/* Add start of DLL (better use the (yet unimplemented) Exe SymTag for this) */
|
||||||
/* FIXME: module.ModuleName isn't correctly set yet if it's passed in SymLoadModule */
|
/* FIXME: module.ModuleName isn't correctly set yet if it's passed in SymLoadModule */
|
||||||
symt_new_public(module, NULL, module->module.ModuleName, FALSE, base, 1);
|
symt_new_public(module, NULL, module->module.ModuleName, base, 1);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Add entry point */
|
/* Add entry point */
|
||||||
symt_new_public(module, NULL, "EntryPoint", FALSE,
|
symt_new_public(module, NULL, "EntryPoint",
|
||||||
base + nth->OptionalHeader.AddressOfEntryPoint, 1);
|
base + nth->OptionalHeader.AddressOfEntryPoint, 1);
|
||||||
#if 0
|
#if 0
|
||||||
/* FIXME: we'd better store addresses linked to sections rather than
|
/* FIXME: we'd better store addresses linked to sections rather than
|
||||||
|
@ -689,7 +689,7 @@ static BOOL pe_load_export_debug_info(const struct process* pcs, struct module*
|
||||||
((char*)&nth->OptionalHeader + nth->FileHeader.SizeOfOptionalHeader);
|
((char*)&nth->OptionalHeader + nth->FileHeader.SizeOfOptionalHeader);
|
||||||
for (i = 0; i < nth->FileHeader.NumberOfSections; i++, section++)
|
for (i = 0; i < nth->FileHeader.NumberOfSections; i++, section++)
|
||||||
{
|
{
|
||||||
symt_new_public(module, NULL, section->Name, FALSE,
|
symt_new_public(module, NULL, section->Name,
|
||||||
RtlImageRvaToVa(nth, mapping, section->VirtualAddress, NULL), 1);
|
RtlImageRvaToVa(nth, mapping, section->VirtualAddress, NULL), 1);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -715,7 +715,6 @@ static BOOL pe_load_export_debug_info(const struct process* pcs, struct module*
|
||||||
if (!names[i]) continue;
|
if (!names[i]) continue;
|
||||||
symt_new_public(module, NULL,
|
symt_new_public(module, NULL,
|
||||||
RtlImageRvaToVa(nth, mapping, names[i], NULL),
|
RtlImageRvaToVa(nth, mapping, names[i], NULL),
|
||||||
FALSE,
|
|
||||||
base + functions[ordinals[i]], 1);
|
base + functions[ordinals[i]], 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -727,7 +726,7 @@ static BOOL pe_load_export_debug_info(const struct process* pcs, struct module*
|
||||||
if ((ordinals[j] == i) && names[j]) break;
|
if ((ordinals[j] == i) && names[j]) break;
|
||||||
if (j < exports->NumberOfNames) continue;
|
if (j < exports->NumberOfNames) continue;
|
||||||
snprintf(buffer, sizeof(buffer), "%d", i + exports->Base);
|
snprintf(buffer, sizeof(buffer), "%d", i + exports->Base);
|
||||||
symt_new_public(module, NULL, buffer, FALSE, base + (DWORD)functions[i], 1);
|
symt_new_public(module, NULL, buffer, base + (DWORD)functions[i], 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -125,7 +125,7 @@ BOOL rsym_parse(struct module* module, unsigned long load_offset,
|
||||||
if (use_raw_address(SymbolName))
|
if (use_raw_address(SymbolName))
|
||||||
Address = Entry->Address;
|
Address = Entry->Address;
|
||||||
|
|
||||||
symt_new_public(module, NULL, SymbolName, FALSE, Address, Size);
|
symt_new_public(module, NULL, SymbolName, Address, Size);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -226,7 +226,6 @@ struct symt_compiland* symt_new_compiland(struct module* module,
|
||||||
struct symt_public* symt_new_public(struct module* module,
|
struct symt_public* symt_new_public(struct module* module,
|
||||||
struct symt_compiland* compiland,
|
struct symt_compiland* compiland,
|
||||||
const char* name,
|
const char* name,
|
||||||
BOOL is_function,
|
|
||||||
unsigned long address, unsigned size)
|
unsigned long address, unsigned size)
|
||||||
{
|
{
|
||||||
struct symt_public* sym;
|
struct symt_public* sym;
|
||||||
|
@ -242,7 +241,6 @@ struct symt_public* symt_new_public(struct module* module,
|
||||||
sym->symt.tag = SymTagPublicSymbol;
|
sym->symt.tag = SymTagPublicSymbol;
|
||||||
sym->hash_elt.name = pool_strdup(&module->pool, name);
|
sym->hash_elt.name = pool_strdup(&module->pool, name);
|
||||||
sym->container = compiland ? &compiland->symt : NULL;
|
sym->container = compiland ? &compiland->symt : NULL;
|
||||||
sym->is_function = is_function;
|
|
||||||
sym->address = address;
|
sym->address = address;
|
||||||
sym->size = size;
|
sym->size = size;
|
||||||
symt_add_module_ht(module, (struct symt_ht*)sym);
|
symt_add_module_ht(module, (struct symt_ht*)sym);
|
||||||
|
@ -699,16 +697,11 @@ static void symt_fill_sym_info(struct module_pair* pair,
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SymTagPublicSymbol:
|
case SymTagPublicSymbol:
|
||||||
{
|
sym_info->Flags |= SYMFLAG_EXPORT;
|
||||||
const struct symt_public* pub = (const struct symt_public*)sym;
|
symt_get_address(sym, &sym_info->Address);
|
||||||
if (pub->is_function)
|
|
||||||
sym_info->Flags |= SYMFLAG_PUBLIC_CODE;
|
|
||||||
else
|
|
||||||
sym_info->Flags |= SYMFLAG_EXPORT;
|
|
||||||
symt_get_address(sym, &sym_info->Address);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case SymTagFunction:
|
case SymTagFunction:
|
||||||
|
sym_info->Flags |= SYMFLAG_FUNCTION;
|
||||||
symt_get_address(sym, &sym_info->Address);
|
symt_get_address(sym, &sym_info->Address);
|
||||||
break;
|
break;
|
||||||
case SymTagThunk:
|
case SymTagThunk:
|
||||||
|
|
Loading…
Reference in a new issue