[PATCH 3/6] wined3d: Properly allocate heap memory for volumes (Try 2)

Stefan Dösinger stefan at codeweavers.com
Wed Aug 21 08:15:49 CDT 2013


Try 2: Adjust to changes in previous patch, otherwise unmodified.
---
 dlls/wined3d/volume.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/dlls/wined3d/volume.c b/dlls/wined3d/volume.c
index 50d9a75..cdc7125 100644
--- a/dlls/wined3d/volume.c
+++ b/dlls/wined3d/volume.c
@@ -184,7 +184,16 @@ HRESULT CDECL wined3d_volume_map(struct wined3d_volume *volume,
             volume, map_desc, box, flags);
 
     if (!volume->resource.allocatedMemory)
-        volume->resource.allocatedMemory = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, volume->resource.size);
+    {
+        volume->resource.heap_memory = wined3d_resource_allocate_sysmem(volume->resource.size);
+        if (!volume->resource.heap_memory)
+        {
+            WARN("Out of memory.\n");
+            map_desc->data = NULL;
+            return E_OUTOFMEMORY;
+        }
+        volume->resource.allocatedMemory = volume->resource.heap_memory;
+    }
 
     TRACE("allocatedMemory %p.\n", volume->resource.allocatedMemory);
 
-- 
1.8.1.5




More information about the wine-patches mailing list