Module: wine Branch: master Commit: c8b5a3be55963fcda51b8e13c10bcd45ecc4bc97 URL: https://source.winehq.org/git/wine.git/?a=commit;h=c8b5a3be55963fcda51b8e13c...
Author: Jacek Caban jacek@codeweavers.com Date: Wed Mar 25 17:41:26 2020 +0100
dbghelp: Explicitly pass file type to path_find_symbol_file.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/dbghelp/dbghelp_private.h | 4 +--- dlls/dbghelp/msc.c | 4 ++-- dlls/dbghelp/path.c | 4 ++-- dlls/dbghelp/pe_module.c | 2 +- 4 files changed, 6 insertions(+), 8 deletions(-)
diff --git a/dlls/dbghelp/dbghelp_private.h b/dlls/dbghelp/dbghelp_private.h index f67a2c22a8..b1e9bb0b21 100644 --- a/dlls/dbghelp/dbghelp_private.h +++ b/dlls/dbghelp/dbghelp_private.h @@ -641,8 +641,6 @@ extern struct module* extern struct module* module_get_containee(const struct process* pcs, const struct module* inner) DECLSPEC_HIDDEN; -extern enum module_type - module_get_type_by_name(const WCHAR* name) DECLSPEC_HIDDEN; extern void module_reset_debug_info(struct module* module) DECLSPEC_HIDDEN; extern BOOL module_remove(struct process* pcs, struct module* module) DECLSPEC_HIDDEN; @@ -665,7 +663,7 @@ extern BOOL pdb_virtual_unwind(struct cpu_stack_walk *csw, DWORD_PTR ip,
/* path.c */ extern BOOL path_find_symbol_file(const struct process* pcs, const struct module* module, - PCSTR full_path, const GUID* guid, DWORD dw1, DWORD dw2, + PCSTR full_path, enum module_type type, const GUID* guid, DWORD dw1, DWORD dw2, WCHAR *buffer, BOOL* is_unmatched) DECLSPEC_HIDDEN; extern WCHAR *get_dos_file_name(const WCHAR *filename) DECLSPEC_HIDDEN; extern BOOL search_dll_path(const WCHAR *name, BOOL (*match)(void*, HANDLE, const WCHAR*), void *param) DECLSPEC_HIDDEN; diff --git a/dlls/dbghelp/msc.c b/dlls/dbghelp/msc.c index 4be0cb244d..6696fa02e4 100644 --- a/dlls/dbghelp/msc.c +++ b/dlls/dbghelp/msc.c @@ -2458,11 +2458,11 @@ static HANDLE map_pdb_file(const struct process* pcs, switch (lookup->kind) { case PDB_JG: - ret = path_find_symbol_file(pcs, module, lookup->filename, NULL, lookup->timestamp, + ret = path_find_symbol_file(pcs, module, lookup->filename, DMT_PDB, NULL, lookup->timestamp, lookup->age, dbg_file_path, &module->module.PdbUnmatched); break; case PDB_DS: - ret = path_find_symbol_file(pcs, module, lookup->filename, &lookup->guid, 0, + ret = path_find_symbol_file(pcs, module, lookup->filename, DMT_PDB, &lookup->guid, 0, lookup->age, dbg_file_path, &module->module.PdbUnmatched); break; } diff --git a/dlls/dbghelp/path.c b/dlls/dbghelp/path.c index 55571e6eff..06208d109d 100644 --- a/dlls/dbghelp/path.c +++ b/dlls/dbghelp/path.c @@ -619,7 +619,7 @@ static BOOL CALLBACK module_find_cb(PCWSTR buffer, PVOID user) }
BOOL path_find_symbol_file(const struct process* pcs, const struct module* module, - PCSTR full_path, const GUID* guid, DWORD dw1, DWORD dw2, + PCSTR full_path, enum module_type type, const GUID* guid, DWORD dw1, DWORD dw2, WCHAR *buffer, BOOL* is_unmatched) { struct module_find mf; @@ -638,7 +638,7 @@ BOOL path_find_symbol_file(const struct process* pcs, const struct module* modul
MultiByteToWideChar(CP_ACP, 0, full_path, -1, full_pathW, MAX_PATH); filename = file_name(full_pathW); - mf.kind = module_get_type_by_name(filename); + mf.kind = type; *is_unmatched = FALSE;
/* first check full path to file */ diff --git a/dlls/dbghelp/pe_module.c b/dlls/dbghelp/pe_module.c index a9410fea58..9d4e82cc71 100644 --- a/dlls/dbghelp/pe_module.c +++ b/dlls/dbghelp/pe_module.c @@ -548,7 +548,7 @@ static BOOL pe_load_dbg_file(const struct process* pcs, struct module* module,
TRACE("Processing DBG file %s\n", debugstr_a(dbg_name));
- if (path_find_symbol_file(pcs, module, dbg_name, NULL, timestamp, 0, tmp, &module->module.DbgUnmatched) && + if (path_find_symbol_file(pcs, module, dbg_name, DMT_DBG, NULL, timestamp, 0, tmp, &module->module.DbgUnmatched) && (hFile = CreateFileW(tmp, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL)) != INVALID_HANDLE_VALUE && ((hMap = CreateFileMappingW(hFile, NULL, PAGE_READONLY, 0, 0, NULL)) != 0) &&