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
bbc14c9a
Commit
bbc14c9a
authored
Aug 17, 2022
by
Jacek Caban
Committed by
Alexandre Julliard
Aug 17, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wow64win: Fix NtUserThunkedMenuItemInfo thunk.
parent
1300cbcb
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
42 additions
and
2 deletions
+42
-2
user.c
dlls/wow64win/user.c
+42
-2
No files found.
dlls/wow64win/user.c
View file @
bbc14c9a
...
...
@@ -3845,6 +3845,7 @@ NTSTATUS WINAPI wow64_NtUserThunkedMenuItemInfo( UINT *args )
UNICODE_STRING32
*
str32
=
get_ptr
(
&
args
);
MENUITEMINFOW
info
=
{
sizeof
(
info
)
},
*
info_ptr
;
UNICODE_STRING
str
;
UINT
ret
;
if
(
info32
)
{
...
...
@@ -3858,19 +3859,58 @@ NTSTATUS WINAPI wow64_NtUserThunkedMenuItemInfo( UINT *args )
info
.
fState
=
info32
->
fState
;
info
.
wID
=
info32
->
wID
;
info
.
hSubMenu
=
UlongToHandle
(
info32
->
hSubMenu
);
info
.
hbmpChecked
=
UlongToHandle
(
info32
->
hbmpUnchecked
);
info
.
hbmpChecked
=
UlongToHandle
(
info32
->
hbmpChecked
);
info
.
hbmpUnchecked
=
UlongToHandle
(
info32
->
hbmpUnchecked
);
info
.
dwItemData
=
info32
->
dwItemData
;
info
.
dwTypeData
=
UlongToPtr
(
info32
->
dwTypeData
);
info
.
cch
=
info32
->
cch
;
info
.
hbmpItem
=
UlongToHandle
(
info32
->
hbmpItem
);
break
;
case
NtUserCheckMenuRadioItem
:
info
.
cch
=
info32
->
cch
;
break
;
case
NtUserGetMenuItemInfoA
:
case
NtUserGetMenuItemInfoW
:
info
.
dwTypeData
=
UlongToPtr
(
info32
->
dwTypeData
);
info
.
cch
=
info32
->
cch
;
break
;
}
info_ptr
=
&
info
;
}
else
info_ptr
=
NULL
;
ret
urn
NtUserThunkedMenuItemInfo
(
handle
,
pos
,
flags
,
method
,
info_ptr
,
ret
=
NtUserThunkedMenuItemInfo
(
handle
,
pos
,
flags
,
method
,
info_ptr
,
unicode_str_32to64
(
&
str
,
str32
));
if
(
info_ptr
)
{
switch
(
method
)
{
case
NtUserGetMenuItemInfoA
:
case
NtUserGetMenuItemInfoW
:
if
(
info
.
fMask
&
(
MIIM_TYPE
|
MIIM_STRING
|
MIIM_FTYPE
))
info32
->
fType
=
info
.
fType
;
if
(
info
.
fMask
&
(
MIIM_TYPE
|
MIIM_BITMAP
))
info32
->
hbmpItem
=
HandleToUlong
(
info
.
hbmpItem
);
if
(
info
.
fMask
&
(
MIIM_TYPE
|
MIIM_STRING
))
{
info32
->
dwTypeData
=
(
UINT_PTR
)
info
.
dwTypeData
;
info32
->
cch
=
info
.
cch
;
}
if
(
info
.
fMask
&
MIIM_STATE
)
info32
->
fState
=
info
.
fState
;
if
(
info
.
fMask
&
MIIM_ID
)
info32
->
wID
=
info
.
wID
;
info32
->
hSubMenu
=
HandleToUlong
(
info
.
hSubMenu
);
if
(
info
.
fMask
&
MIIM_CHECKMARKS
)
{
info32
->
hbmpChecked
=
HandleToUlong
(
info
.
hbmpChecked
);
info32
->
hbmpUnchecked
=
HandleToUlong
(
info
.
hbmpUnchecked
);
}
if
(
info
.
fMask
&
MIIM_DATA
)
info32
->
dwItemData
=
info
.
dwItemData
;
break
;
}
}
return
ret
;
}
NTSTATUS
WINAPI
wow64_NtUserToUnicodeEx
(
UINT
*
args
)
...
...
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