[PATCH] arbfp_blit_unset should call ENTER_GL/LEAVE_GL instead of the caller.
Roderick Colenbrander
thunderbird2k at gmx.net
Sat Oct 18 12:35:45 CDT 2008
---
dlls/wined3d/arb_program_shader.c | 3 +++
dlls/wined3d/surface.c | 5 +++--
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index 3dbed28..3fdcdf1 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -3707,6 +3707,8 @@ static HRESULT arbfp_blit_set(IWineD3DDevice *iface, WINED3DFORMAT fmt, GLenum t
static void arbfp_blit_unset(IWineD3DDevice *iface) {
IWineD3DDeviceImpl *device = (IWineD3DDeviceImpl *) iface;
+
+ ENTER_GL();
glDisable(GL_FRAGMENT_PROGRAM_ARB);
checkGLcall("glDisable(GL_FRAGMENT_PROGRAM_ARB)");
glDisable(GL_TEXTURE_2D);
@@ -3719,6 +3721,7 @@ static void arbfp_blit_unset(IWineD3DDevice *iface) {
glDisable(GL_TEXTURE_RECTANGLE_ARB);
checkGLcall("glDisable(GL_TEXTURE_RECTANGLE_ARB)");
}
+ LEAVE_GL();
}
static BOOL arbfp_blit_conv_supported(WINED3DFORMAT fmt) {
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index a90f2c7..9119a9c 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -3557,8 +3557,6 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
glBindTexture(Src->glDescription.target, 0);
checkGLcall("glBindTexture(Src->glDescription.target, 0)");
- /* Leave the opengl state valid for blitting */
- myDevice->blitter->unset_shader((IWineD3DDevice *) myDevice);
/* Restore the color key parameters */
Src->CKeyFlags = oldCKeyFlags;
@@ -3570,6 +3568,9 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
LEAVE_GL();
+ /* Leave the opengl state valid for blitting */
+ myDevice->blitter->unset_shader((IWineD3DDevice *) myDevice);
+
/* Flush in case the drawable is used by multiple GL contexts */
if(dstSwapchain && (This == (IWineD3DSurfaceImpl *) dstSwapchain->frontBuffer || dstSwapchain->num_contexts >= 2))
glFlush();
--
1.5.3.8
--========GMX148571224361376171222--
More information about the wine-patches
mailing list