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
6d86e7f8
Commit
6d86e7f8
authored
May 09, 2008
by
Alexander Dorofeyev
Committed by
Alexandre Julliard
May 09, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Use source colorkey when passed KEYSRC or KEYSRCOVERRIDE.
Fixes failure in p8_primary_test when using opengl ddraw renderer.
parent
39ebaba5
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
4 additions
and
4 deletions
+4
-4
surface.c
dlls/wined3d/surface.c
+4
-4
No files found.
dlls/wined3d/surface.c
View file @
6d86e7f8
...
...
@@ -3242,7 +3242,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
/* Blit from offscreen surface to render target */
float
glTexCoord
[
4
];
DWORD
oldCKeyFlags
=
Src
->
CKeyFlags
;
WINEDDCOLORKEY
oldBltCKey
=
This
->
SrcBltCKey
;
WINEDDCOLORKEY
oldBltCKey
=
Src
->
SrcBltCKey
;
RECT
SourceRectangle
;
BOOL
paletteOverride
=
FALSE
;
...
...
@@ -3290,7 +3290,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
}
else
if
(
Flags
&
WINEDDBLT_KEYSRCOVERRIDE
)
{
/* Use color key from DDBltFx */
Src
->
CKeyFlags
|=
WINEDDSD_CKSRCBLT
;
This
->
SrcBltCKey
=
DDBltFx
->
ddckSrcColorkey
;
Src
->
SrcBltCKey
=
DDBltFx
->
ddckSrcColorkey
;
}
else
{
/* Do not use color key */
Src
->
CKeyFlags
&=
~
WINEDDSD_CKSRCBLT
;
...
...
@@ -3353,7 +3353,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
* Which means that the colorkey is one of the palette entries. In other cases pixels that
* should be masked away have alpha set to 0. */
if
(
primary_render_target_is_p8
(
myDevice
))
glAlphaFunc
(
GL_NOTEQUAL
,
(
float
)
This
->
SrcBltCKey
.
dwColorSpaceLowValue
/
256
.
0
);
glAlphaFunc
(
GL_NOTEQUAL
,
(
float
)
Src
->
SrcBltCKey
.
dwColorSpaceLowValue
/
256
.
0
);
else
glAlphaFunc
(
GL_NOTEQUAL
,
0
.
0
);
checkGLcall
(
"glAlphaFunc
\n
"
);
...
...
@@ -3411,7 +3411,7 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
}
/* Restore the color key parameters */
Src
->
CKeyFlags
=
oldCKeyFlags
;
This
->
SrcBltCKey
=
oldBltCKey
;
Src
->
SrcBltCKey
=
oldBltCKey
;
/* Clear the palette as the surface didn't have a palette attached, it would confuse GetPalette and other calls */
if
(
paletteOverride
)
...
...
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