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
b482e9ac
Commit
b482e9ac
authored
Aug 16, 2002
by
Huw D M Davies
Committed by
Alexandre Julliard
Aug 16, 2002
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix for metafile ExtTextOut that only includes the rectangle if either
ETO_CLIPPED or ETO_OPAQUE is set. Slightly less of a stub implementation for GetWinMetaFileBits.
parent
0eec45a9
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
3 deletions
+13
-3
metafile.c
objects/metafile.c
+13
-3
No files found.
objects/metafile.c
View file @
b482e9ac
...
...
@@ -1352,9 +1352,18 @@ UINT WINAPI GetWinMetaFileBits(HENHMETAFILE hemf,
UINT
cbBuffer
,
LPBYTE
lpbBuffer
,
INT
fnMapMode
,
HDC
hdcRef
)
{
HDC
hdcmf
;
HMETAFILE
hmf
;
UINT
ret
;
FIXME
(
"(%d,%d,%p,%d,%d): stub
\n
"
,
hemf
,
cbBuffer
,
lpbBuffer
,
fnMapMode
,
hdcRef
);
return
0
;
hdcmf
=
CreateMetaFileA
(
NULL
);
/* PlayEnhMetaFile(hdcmf, hemf, lpRect); where does the bounding rect come from? */
hmf
=
CloseMetaFile
(
hdcmf
);
ret
=
GetMetaFileBitsEx
(
hmf
,
cbBuffer
,
lpbBuffer
);
DeleteMetaFile
(
hmf
);
return
ret
;
}
/******************************************************************
...
...
@@ -1442,14 +1451,15 @@ static BOOL MF_Play_MetaExtTextOut(HDC16 hdc, METARECORD *mr)
LPSTR
sot
;
DWORD
len
;
WORD
s1
;
BOOL
isrect
=
mr
->
rdParm
[
3
]
&
(
ETO_OPAQUE
|
ETO_CLIPPED
);
s1
=
mr
->
rdParm
[
2
];
/* String length */
len
=
sizeof
(
METARECORD
)
+
(((
s1
+
1
)
>>
1
)
*
2
)
+
2
*
sizeof
(
short
)
+
sizeof
(
UINT16
)
+
(
mr
->
rdParm
[
3
]
?
sizeof
(
RECT16
)
:
0
);
+
sizeof
(
UINT16
)
+
(
isrect
?
sizeof
(
RECT16
)
:
0
);
/* rec len without dx array */
sot
=
(
LPSTR
)
&
mr
->
rdParm
[
4
];
/* start_of_text */
if
(
mr
->
rdParm
[
3
]
)
if
(
isrect
)
sot
+=
sizeof
(
RECT16
);
/* there is a rectangle, so add offset */
if
(
mr
->
rdSize
==
len
/
2
)
...
...
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