Commit fc1f63d2 authored by Paul Vriens's avatar Paul Vriens Committed by Alexandre Julliard

Check always if destination surface is locked.

parent 8382bf01
......@@ -514,12 +514,10 @@ DIB_DirectDrawSurface_Blt(LPDIRECTDRAWSURFACE7 iface, LPRECT rdst,
}
}
if (src != NULL) {
if (This->locked || ((IDirectDrawSurfaceImpl *)src)->locked) {
if ((This->locked) || ((src != NULL) && (((IDirectDrawSurfaceImpl *)src)->locked))) {
WARN(" Surface is busy, returning DDERR_SURFACEBUSY\n");
return DDERR_SURFACEBUSY;
}
}
/* First, check if the possible override function handles this case */
if (This->aux_blt != NULL) {
......@@ -992,12 +990,10 @@ DIB_DirectDrawSurface_BltFast(LPDIRECTDRAWSURFACE7 iface, DWORD dstx,
TRACE(" srcrect: NULL\n");
}
if (src != NULL) {
if (This->locked || ((IDirectDrawSurfaceImpl *)src)->locked) {
if ((This->locked) || ((src != NULL) && (((IDirectDrawSurfaceImpl *)src)->locked))) {
WARN(" Surface is busy, returning DDERR_SURFACEBUSY\n");
return DDERR_SURFACEBUSY;
}
}
/* First, check if the possible override function handles this case */
if (This->aux_bltfast != NULL) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment