Henri Verbeet : ddraw: Don't enumerate surfaces without references.

Alexandre Julliard julliard at winehq.org
Tue Dec 6 15:46:17 CST 2011


Module: wine
Branch: master
Commit: 6523ef5f679950627a79dc2c802ea6655c73c3c0
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=6523ef5f679950627a79dc2c802ea6655c73c3c0

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Mon Dec  5 22:06:55 2011 +0100

ddraw: Don't enumerate surfaces without references.

---

 dlls/ddraw/ddraw.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c
index 03d8b1c..b344b81 100644
--- a/dlls/ddraw/ddraw.c
+++ b/dlls/ddraw/ddraw.c
@@ -3422,6 +3422,13 @@ static HRESULT WINAPI ddraw7_EnumSurfaces(IDirectDraw7 *iface, DWORD Flags,
     LIST_FOR_EACH_SAFE(entry, entry2, &This->surface_list)
     {
         surf = LIST_ENTRY(entry, IDirectDrawSurfaceImpl, surface_list_entry);
+
+        if (!surf->iface_count)
+        {
+            WARN("Not enumerating surface %p because it doesn't have any references.\n", surf);
+            continue;
+        }
+
         if (all || (nomatch != ddraw_match_surface_desc(DDSD, &surf->surface_desc)))
         {
             TRACE("Enumerating surface %p.\n", surf);




More information about the wine-cvs mailing list