wined3d: Remove an old hack around Mesa choking on protected memory from flush_to_framebuffer_drawpixels.

Gerald Pfeifer gerald at pfeifer.com
Sat Feb 12 17:46:19 CST 2011


This somehow got stuck from the original discussion we had a year ago.

This is in response to Stefan's feedback 
(http://www.winehq.org/pipermail/wine-devel/2010-May/083480.html) 
for a previous version of this patch of mine
(http://www.winehq.org/pipermail/wine-patches/2010-May/088229.html).

Either my original patch or this new one (or a variation thereof)
should be applied.  Stefan, I hope it got you right?

Gerald

---
 dlls/wined3d/surface.c |   17 -----------------
 1 files changed, 0 insertions(+), 17 deletions(-)

diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 4377f10..b7f4b1c 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -1960,23 +1960,6 @@ static void flush_to_framebuffer_drawpixels(IWineD3DSurfaceImpl *This,
     glRasterPos3i(rect.left, rect.top, 1);
     checkGLcall("glRasterPos3i");
 
-    /* Some drivers(radeon dri, others?) don't like exceptions during
-     * glDrawPixels. If the surface is a DIB section, it might be in GDIMode
-     * after ReleaseDC. Reading it will cause an exception, which x11drv will
-     * catch to put the dib section in InSync mode, which leads to a crash
-     * and a blocked x server on my radeon card.
-     *
-     * The following lines read the dib section so it is put in InSync mode
-     * before glDrawPixels is called and the crash is prevented. There won't
-     * be any interfering gdi accesses, because UnlockRect is called from
-     * ReleaseDC, and the app won't use the dc any more afterwards.
-     */
-    if ((This->flags & SFLAG_DIBSECTION) && !(This->flags & SFLAG_PBO))
-    {
-        volatile BYTE read;
-        read = This->resource.allocatedMemory[0];
-    }
-
     /* If not fullscreen, we need to skip a number of bytes to find the next row of data */
     glPixelStorei(GL_UNPACK_ROW_LENGTH, This->currentDesc.Width);
 
-- 
1.7.2.2



More information about the wine-patches mailing list