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
bf6ac26f
Commit
bf6ac26f
authored
Aug 21, 2021
by
Eric Pouech
Committed by
Alexandre Julliard
Aug 23, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winedump: Fix public and data/proc ref definitions of Codeview records.
Signed-off-by:
Eric Pouech
<
eric.pouech@gmail.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
84b0bd45
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
27 additions
and
9 deletions
+27
-9
msc.c
dlls/dbghelp/msc.c
+1
-1
mscvpdb.h
include/wine/mscvpdb.h
+11
-1
msc.c
tools/winedump/msc.c
+15
-7
No files found.
dlls/dbghelp/msc.c
View file @
bf6ac26f
...
...
@@ -2077,7 +2077,7 @@ static BOOL codeview_snarf_public(const struct msc_debug_info* msc_dbg, const BY
{
symt_new_public
(
msc_dbg
->
module
,
compiland
,
sym
->
public_v3
.
name
,
sym
->
public_v3
.
symtype
==
SYMTYPE_FUNCTION
,
sym
->
public_v3
.
pubsymflags
==
SYMTYPE_FUNCTION
,
codeview_get_address
(
msc_dbg
,
sym
->
public_v3
.
segment
,
sym
->
public_v3
.
offset
),
1
);
}
break
;
...
...
include/wine/mscvpdb.h
View file @
bf6ac26f
...
...
@@ -1386,7 +1386,7 @@ union codeview_symbol
{
unsigned
short
int
len
;
unsigned
short
int
id
;
cv_typ_t
symtype
;
unsigned
int
pubsymflags
;
unsigned
int
offset
;
unsigned
short
segment
;
char
name
[
1
];
...
...
@@ -1683,6 +1683,16 @@ union codeview_symbol
{
unsigned
short
int
len
;
unsigned
short
int
id
;
unsigned
int
sumName
;
unsigned
int
ibSym
;
unsigned
short
imod
;
char
name
[
1
];
}
refsym2_v3
;
struct
{
unsigned
short
int
len
;
unsigned
short
int
id
;
unsigned
int
offset
;
unsigned
short
segment
;
}
ssearch_v1
;
...
...
tools/winedump/msc.c
View file @
bf6ac26f
...
...
@@ -1142,15 +1142,23 @@ BOOL codeview_dump_symbols(const void* root, unsigned long size)
break
;
case
S_PUB32
:
/* not completely sure of those two anyway */
printf
(
"
\t
S-Public V3 '%s' %04x:%08x flags%s%s%s%s
\n
"
,
get_symbol_str
(
sym
->
public_v3
.
name
),
sym
->
public_v3
.
segment
,
sym
->
public_v3
.
offset
,
(
sym
->
public_v3
.
pubsymflags
&
1
)
?
"-code"
:
""
,
(
sym
->
public_v3
.
pubsymflags
&
2
)
?
"-func"
:
""
,
(
sym
->
public_v3
.
pubsymflags
&
4
)
?
"-manage"
:
""
,
(
sym
->
public_v3
.
pubsymflags
&
8
)
?
"-msil"
:
""
);
break
;
case
S_DATAREF
:
case
S_PROCREF
:
case
S_LPROCREF
:
printf
(
"
\t
S-Public%s V3 '%s' %04x:%08x type:%08x
\n
"
,
sym
->
generic
.
id
==
S_PUB32
?
""
:
(
sym
->
generic
.
id
==
S_PROCREF
?
"<subkind1"
:
"<subkind2"
),
get_symbol_str
(
sym
->
public_v3
.
name
),
sym
->
public_v3
.
segment
,
sym
->
public_v3
.
offset
,
sym
->
public_v3
.
symtype
);
printf
(
"
\t
S-%sref V3 '%s' mod:%04x sym:%08x name:%08x
\n
"
,
sym
->
generic
.
id
==
S_DATAREF
?
"Data"
:
(
sym
->
generic
.
id
==
S_PROCREF
?
"Proc"
:
"Lproc"
),
get_symbol_str
(
sym
->
refsym2_v3
.
name
),
sym
->
refsym2_v3
.
imod
,
sym
->
refsym2_v3
.
ibSym
,
sym
->
refsym2_v3
.
sumName
);
break
;
/*
...
...
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