Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
3346fc74
Commit
3346fc74
authored
Sep 04, 2011
by
Henri Verbeet
Committed by
Alexandre Julliard
Sep 05, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Get rid of the rect checks for present in IWineD3DSurfaceImpl_BltOverride().
parent
74b418c9
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
2 additions
and
53 deletions
+2
-53
surface.c
dlls/wined3d/surface.c
+2
-53
No files found.
dlls/wined3d/surface.c
View file @
3346fc74
...
@@ -5321,61 +5321,10 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(struct wined3d_surface *dst_surfa
...
@@ -5321,61 +5321,10 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(struct wined3d_surface *dst_surfa
/* Half-Life does a Blt from the back buffer to the front buffer,
/* Half-Life does a Blt from the back buffer to the front buffer,
* Full surface size, no flags... Use present instead
* Full surface size, no flags... Use present instead
*
*
* This path will only be entered for d3d7 and ddraw apps, because d3d8/9 offer no way to blit TO the front buffer
* This path will only be entered for d3d7 and ddraw apps, because
*/
* d3d8/9 offer no way to blit to the front buffer. */
/* Check rects - wined3d_swapchain_present() doesn't handle them. */
for
(;;)
for
(;;)
{
{
TRACE
(
"Looking if a Present can be done...
\n
"
);
/* Source Rectangle must be full surface */
if
(
src_rect
->
left
||
src_rect
->
top
||
src_rect
->
right
!=
src_surface
->
resource
.
width
||
src_rect
->
bottom
!=
src_surface
->
resource
.
height
)
{
TRACE
(
"No, Source rectangle doesn't match
\n
"
);
break
;
}
/* No stretching may occur */
if
(
src_rect
->
right
!=
dst_rect
->
right
-
dst_rect
->
left
||
src_rect
->
bottom
!=
dst_rect
->
bottom
-
dst_rect
->
top
)
{
TRACE
(
"No, stretching is done
\n
"
);
break
;
}
/* Destination must be full surface or match the clipping rectangle */
if
(
dst_surface
->
clipper
&&
dst_surface
->
clipper
->
hWnd
)
{
RECT
cliprect
;
POINT
pos
[
2
];
GetClientRect
(
dst_surface
->
clipper
->
hWnd
,
&
cliprect
);
pos
[
0
].
x
=
dst_rect
->
left
;
pos
[
0
].
y
=
dst_rect
->
top
;
pos
[
1
].
x
=
dst_rect
->
right
;
pos
[
1
].
y
=
dst_rect
->
bottom
;
MapWindowPoints
(
GetDesktopWindow
(),
dst_surface
->
clipper
->
hWnd
,
pos
,
2
);
if
(
pos
[
0
].
x
!=
cliprect
.
left
||
pos
[
0
].
y
!=
cliprect
.
top
||
pos
[
1
].
x
!=
cliprect
.
right
||
pos
[
1
].
y
!=
cliprect
.
bottom
)
{
TRACE
(
"No, dest rectangle doesn't match(clipper)
\n
"
);
TRACE
(
"Clip rect at %s
\n
"
,
wine_dbgstr_rect
(
&
cliprect
));
TRACE
(
"Blt dest: %s
\n
"
,
wine_dbgstr_rect
(
dst_rect
));
break
;
}
}
else
if
(
dst_rect
->
left
||
dst_rect
->
top
||
dst_rect
->
right
!=
dst_surface
->
resource
.
width
||
dst_rect
->
bottom
!=
dst_surface
->
resource
.
height
)
{
TRACE
(
"No, dest rectangle doesn't match(surface size)
\n
"
);
break
;
}
TRACE
(
"Yes
\n
"
);
/* These flags are unimportant for the flag check, remove them */
/* These flags are unimportant for the flag check, remove them */
if
(
!
(
flags
&
~
(
WINEDDBLT_DONOTWAIT
|
WINEDDBLT_WAIT
)))
if
(
!
(
flags
&
~
(
WINEDDBLT_DONOTWAIT
|
WINEDDBLT_WAIT
)))
{
{
...
...
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