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
840b5af7
Commit
840b5af7
authored
Dec 10, 2009
by
Henri Verbeet
Committed by
Alexandre Julliard
Dec 11, 2009
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wined3d: Properly invalidate the context's draw buffer in color_fill_fbo().
parent
23cea50d
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
15 additions
and
7 deletions
+15
-7
context.c
dlls/wined3d/context.c
+8
-0
device.c
dlls/wined3d/device.c
+6
-7
wined3d_private.h
dlls/wined3d/wined3d_private.h
+1
-0
No files found.
dlls/wined3d/context.c
View file @
840b5af7
...
...
@@ -2097,6 +2097,14 @@ static void context_apply_draw_buffer(struct wined3d_context *context, BOOL blit
}
}
/* GL locking is done by the caller. */
void
context_set_draw_buffer
(
struct
wined3d_context
*
context
,
GLenum
buffer
)
{
glDrawBuffer
(
buffer
);
checkGLcall
(
"glDrawBuffer()"
);
context
->
draw_buffer_dirty
=
TRUE
;
}
/*****************************************************************************
* context_acquire
*
...
...
dlls/wined3d/device.c
View file @
840b5af7
...
...
@@ -5696,18 +5696,17 @@ static void color_fill_fbo(IWineD3DDevice *iface, IWineD3DSurface *surface,
IWineD3DSwapChain
*
swapchain
;
swapchain
=
get_swapchain
(
surface
);
if
(
!
surface_is_offscreen
(
surface
))
{
GLenum
buffer
;
if
(
!
surface_is_offscreen
(
surface
))
{
TRACE
(
"Surface %p is onscreen
\n
"
,
surface
);
context
=
context_acquire
(
This
,
surface
,
CTXUSAGE_RESOURCELOAD
);
ENTER_GL
();
context_bind_fbo
(
context
,
GL_FRAMEBUFFER
,
NULL
);
buffer
=
surface_get_gl_buffer
(
surface
,
swapchain
);
glDrawBuffer
(
buffer
);
checkGLcall
(
"glDrawBuffer()"
);
}
else
{
context_set_draw_buffer
(
context
,
surface_get_gl_buffer
(
surface
,
swapchain
)
);
}
else
{
TRACE
(
"Surface %p is offscreen
\n
"
,
surface
);
context
=
context_acquire
(
This
,
NULL
,
CTXUSAGE_RESOURCELOAD
);
...
...
dlls/wined3d/wined3d_private.h
View file @
840b5af7
...
...
@@ -1187,6 +1187,7 @@ struct wined3d_context *context_get_current(void) DECLSPEC_HIDDEN;
DWORD
context_get_tls_idx
(
void
)
DECLSPEC_HIDDEN
;
void
context_release
(
struct
wined3d_context
*
context
)
DECLSPEC_HIDDEN
;
BOOL
context_set_current
(
struct
wined3d_context
*
ctx
)
DECLSPEC_HIDDEN
;
void
context_set_draw_buffer
(
struct
wined3d_context
*
context
,
GLenum
buffer
)
DECLSPEC_HIDDEN
;
void
context_set_tls_idx
(
DWORD
idx
)
DECLSPEC_HIDDEN
;
void
delete_opengl_contexts
(
IWineD3DDevice
*
iface
,
IWineD3DSwapChain
*
swapchain
)
DECLSPEC_HIDDEN
;
...
...
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