Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
01e69c71
Commit
01e69c71
authored
Oct 18, 2008
by
Eric Pouech
Committed by
Alexandre Julliard
Oct 20, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
dbghelp: Report in module's info when a module's debug information has been…
dbghelp: Report in module's info when a module's debug information has been mismatched (dbg and pdb only).
parent
b1542f4f
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
12 additions
and
7 deletions
+12
-7
dbghelp_private.h
dlls/dbghelp/dbghelp_private.h
+2
-1
msc.c
dlls/dbghelp/msc.c
+5
-4
path.c
dlls/dbghelp/path.c
+4
-1
pe_module.c
dlls/dbghelp/pe_module.c
+1
-1
No files found.
dlls/dbghelp/dbghelp_private.h
View file @
01e69c71
...
...
@@ -476,7 +476,8 @@ extern BOOL pdb_fetch_file_info(struct pdb_lookup* pdb_lookup);
/* path.c */
extern
BOOL
path_find_symbol_file
(
const
struct
process
*
pcs
,
PCSTR
full_path
,
const
GUID
*
guid
,
DWORD
dw1
,
DWORD
dw2
,
PSTR
buffer
);
const
GUID
*
guid
,
DWORD
dw1
,
DWORD
dw2
,
PSTR
buffer
,
BOOL
*
is_unmatched
);
/* pe_module.c */
extern
BOOL
pe_load_nt_header
(
HANDLE
hProc
,
DWORD
base
,
IMAGE_NT_HEADERS
*
nth
);
...
...
dlls/dbghelp/msc.c
View file @
01e69c71
...
...
@@ -2134,7 +2134,8 @@ static void pdb_convert_symbol_file(const PDB_SYMBOLS* symbols,
}
static
HANDLE
open_pdb_file
(
const
struct
process
*
pcs
,
const
struct
pdb_lookup
*
lookup
)
const
struct
pdb_lookup
*
lookup
,
struct
module
*
module
)
{
HANDLE
h
;
char
dbg_file_path
[
MAX_PATH
];
...
...
@@ -2144,11 +2145,11 @@ static HANDLE open_pdb_file(const struct process* pcs,
{
case
PDB_JG
:
ret
=
path_find_symbol_file
(
pcs
,
lookup
->
filename
,
NULL
,
lookup
->
u
.
jg
.
timestamp
,
lookup
->
age
,
dbg_file_path
);
lookup
->
age
,
dbg_file_path
,
&
module
->
module
.
PdbUnmatched
);
break
;
case
PDB_DS
:
ret
=
path_find_symbol_file
(
pcs
,
lookup
->
filename
,
&
lookup
->
u
.
ds
.
guid
,
0
,
lookup
->
age
,
dbg_file_path
);
lookup
->
age
,
dbg_file_path
,
&
module
->
module
.
PdbUnmatched
);
break
;
}
if
(
!
ret
)
...
...
@@ -2403,7 +2404,7 @@ static BOOL pdb_process_internal(const struct process* pcs,
TRACE
(
"Processing PDB file %s
\n
"
,
pdb_lookup
->
filename
);
/* Open and map() .PDB file */
if
((
hFile
=
open_pdb_file
(
pcs
,
pdb_lookup
))
==
NULL
||
if
((
hFile
=
open_pdb_file
(
pcs
,
pdb_lookup
,
msc_dbg
->
module
))
==
NULL
||
((
hMap
=
CreateFileMappingW
(
hFile
,
NULL
,
PAGE_READONLY
,
0
,
0
,
NULL
))
==
NULL
)
||
((
image
=
MapViewOfFile
(
hMap
,
FILE_MAP_READ
,
0
,
0
,
0
))
==
NULL
))
{
...
...
dlls/dbghelp/path.c
View file @
01e69c71
...
...
@@ -612,7 +612,8 @@ static BOOL CALLBACK module_find_cb(PCWSTR buffer, PVOID user)
}
BOOL
path_find_symbol_file
(
const
struct
process
*
pcs
,
PCSTR
full_path
,
const
GUID
*
guid
,
DWORD
dw1
,
DWORD
dw2
,
PSTR
buffer
)
const
GUID
*
guid
,
DWORD
dw1
,
DWORD
dw2
,
PSTR
buffer
,
BOOL
*
is_unmatched
)
{
struct
module_find
mf
;
WCHAR
full_pathW
[
MAX_PATH
];
...
...
@@ -632,6 +633,7 @@ BOOL path_find_symbol_file(const struct process* pcs, PCSTR full_path,
MultiByteToWideChar
(
CP_ACP
,
0
,
full_path
,
-
1
,
full_pathW
,
MAX_PATH
);
filename
=
file_nameW
(
full_pathW
);
mf
.
kind
=
module_get_type_by_name
(
filename
);
*
is_unmatched
=
FALSE
;
/* first check full path to file */
if
(
module_find_cb
(
full_pathW
,
&
mf
))
...
...
@@ -665,6 +667,7 @@ BOOL path_find_symbol_file(const struct process* pcs, PCSTR full_path,
if
((
dbghelp_options
&
SYMOPT_LOAD_ANYTHING
)
&&
mf
.
matched
)
{
WideCharToMultiByte
(
CP_ACP
,
0
,
mf
.
filename
,
-
1
,
buffer
,
MAX_PATH
,
NULL
,
NULL
);
*
is_unmatched
=
TRUE
;
return
TRUE
;
}
return
FALSE
;
...
...
dlls/dbghelp/pe_module.c
View file @
01e69c71
...
...
@@ -94,7 +94,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
,
dbg_name
,
NULL
,
timestamp
,
0
,
tmp
)
&&
if
(
path_find_symbol_file
(
pcs
,
dbg_name
,
NULL
,
timestamp
,
0
,
tmp
,
&
module
->
module
.
DbgUnmatched
)
&&
(
hFile
=
CreateFileA
(
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
)
&&
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment