wined3d: arbfp_blit_unset should call ENTER_GL/LEAVE_GL instead of the caller.
This commit is contained in:
parent
8a002b09c1
commit
5163a360e0
|
@ -3707,6 +3707,8 @@ static HRESULT arbfp_blit_set(IWineD3DDevice *iface, WINED3DFORMAT fmt, GLenum t
|
||||||
|
|
||||||
static void arbfp_blit_unset(IWineD3DDevice *iface) {
|
static void arbfp_blit_unset(IWineD3DDevice *iface) {
|
||||||
IWineD3DDeviceImpl *device = (IWineD3DDeviceImpl *) iface;
|
IWineD3DDeviceImpl *device = (IWineD3DDeviceImpl *) iface;
|
||||||
|
|
||||||
|
ENTER_GL();
|
||||||
glDisable(GL_FRAGMENT_PROGRAM_ARB);
|
glDisable(GL_FRAGMENT_PROGRAM_ARB);
|
||||||
checkGLcall("glDisable(GL_FRAGMENT_PROGRAM_ARB)");
|
checkGLcall("glDisable(GL_FRAGMENT_PROGRAM_ARB)");
|
||||||
glDisable(GL_TEXTURE_2D);
|
glDisable(GL_TEXTURE_2D);
|
||||||
|
@ -3719,6 +3721,7 @@ static void arbfp_blit_unset(IWineD3DDevice *iface) {
|
||||||
glDisable(GL_TEXTURE_RECTANGLE_ARB);
|
glDisable(GL_TEXTURE_RECTANGLE_ARB);
|
||||||
checkGLcall("glDisable(GL_TEXTURE_RECTANGLE_ARB)");
|
checkGLcall("glDisable(GL_TEXTURE_RECTANGLE_ARB)");
|
||||||
}
|
}
|
||||||
|
LEAVE_GL();
|
||||||
}
|
}
|
||||||
|
|
||||||
static BOOL arbfp_blit_conv_supported(WINED3DFORMAT fmt) {
|
static BOOL arbfp_blit_conv_supported(WINED3DFORMAT fmt) {
|
||||||
|
|
|
@ -3556,8 +3556,6 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
|
||||||
|
|
||||||
glBindTexture(Src->glDescription.target, 0);
|
glBindTexture(Src->glDescription.target, 0);
|
||||||
checkGLcall("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 */
|
/* Restore the color key parameters */
|
||||||
Src->CKeyFlags = oldCKeyFlags;
|
Src->CKeyFlags = oldCKeyFlags;
|
||||||
|
@ -3569,6 +3567,9 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
|
||||||
|
|
||||||
LEAVE_GL();
|
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 */
|
/* Flush in case the drawable is used by multiple GL contexts */
|
||||||
if(dstSwapchain && (This == (IWineD3DSurfaceImpl *) dstSwapchain->frontBuffer || dstSwapchain->num_contexts >= 2))
|
if(dstSwapchain && (This == (IWineD3DSurfaceImpl *) dstSwapchain->frontBuffer || dstSwapchain->num_contexts >= 2))
|
||||||
glFlush();
|
glFlush();
|
||||||
|
|
Loading…
Reference in New Issue