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
6892434b
Commit
6892434b
authored
Jul 03, 2023
by
Jacek Caban
Committed by
Alexandre Julliard
Jul 03, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winedump: Add support for dumping IMPORT_OBJECT_NAME_EXPORTAS symbols.
This is used by ARM64EC importlibs.
parent
7aa6da98
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
8 additions
and
4 deletions
+8
-4
winnt.h
include/winnt.h
+2
-1
lib.c
tools/winedump/lib.c
+6
-3
No files found.
include/winnt.h
View file @
6892434b
...
...
@@ -3541,7 +3541,8 @@ typedef enum IMPORT_OBJECT_NAME_TYPE
IMPORT_OBJECT_ORDINAL
=
0
,
IMPORT_OBJECT_NAME
=
1
,
IMPORT_OBJECT_NAME_NO_PREFIX
=
2
,
IMPORT_OBJECT_NAME_UNDECORATE
=
3
IMPORT_OBJECT_NAME_UNDECORATE
=
3
,
IMPORT_OBJECT_NAME_EXPORTAS
=
4
}
IMPORT_OBJECT_NAME_TYPE
;
typedef
struct
_ANON_OBJECT_HEADER
...
...
tools/winedump/lib.c
View file @
6892434b
...
...
@@ -46,18 +46,21 @@ static void dump_import_object(const IMPORT_OBJECT_HEADER *ioh)
if
(
ioh
->
Version
==
0
)
{
static
const
char
*
const
obj_type
[]
=
{
"code"
,
"data"
,
"const"
};
static
const
char
*
const
name_type
[]
=
{
"ordinal"
,
"name"
,
"no prefix"
,
"undecorate"
};
const
char
*
name
;
static
const
char
*
const
name_type
[]
=
{
"ordinal"
,
"name"
,
"no prefix"
,
"undecorate"
,
"export as"
};
const
char
*
name
,
*
dll_name
;
printf
(
" Version : %X
\n
"
,
ioh
->
Version
);
printf
(
" Machine : %X (%s)
\n
"
,
ioh
->
Machine
,
get_machine_str
(
ioh
->
Machine
));
printf
(
" TimeDateStamp: %08X %s
\n
"
,
(
UINT
)
ioh
->
TimeDateStamp
,
get_time_str
(
ioh
->
TimeDateStamp
));
printf
(
" SizeOfData : %08X
\n
"
,
(
UINT
)
ioh
->
SizeOfData
);
name
=
(
const
char
*
)
ioh
+
sizeof
(
*
ioh
);
printf
(
" DLL name : %s
\n
"
,
name
+
strlen
(
name
)
+
1
);
dll_name
=
name
+
strlen
(
name
)
+
1
;
printf
(
" DLL name : %s
\n
"
,
dll_name
);
printf
(
" Symbol name : %s
\n
"
,
name
);
printf
(
" Type : %s
\n
"
,
(
ioh
->
Type
<
ARRAY_SIZE
(
obj_type
))
?
obj_type
[
ioh
->
Type
]
:
"unknown"
);
printf
(
" Name type : %s
\n
"
,
(
ioh
->
NameType
<
ARRAY_SIZE
(
name_type
))
?
name_type
[
ioh
->
NameType
]
:
"unknown"
);
if
(
ioh
->
NameType
==
IMPORT_OBJECT_NAME_EXPORTAS
)
printf
(
" Export name : %s
\n
"
,
dll_name
+
strlen
(
dll_name
)
+
1
);
printf
(
" %-13s: %u
\n
"
,
(
ioh
->
NameType
==
IMPORT_OBJECT_ORDINAL
)
?
"Ordinal"
:
"Hint"
,
ioh
->
Ordinal
);
printf
(
"
\n
"
);
}
...
...
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