From 4f899571617d3cde94da2e9b54cc53557784b956 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Wed, 18 Sep 2013 10:57:10 +0200 Subject: [PATCH] ddraw: Verify that the surface is in video memory in d3d_device_create(). --- dlls/ddraw/device.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c index 210a5224fae..9f537c1c941 100644 --- a/dlls/ddraw/device.c +++ b/dlls/ddraw/device.c @@ -6762,6 +6762,12 @@ HRESULT d3d_device_create(struct ddraw *ddraw, struct ddraw_surface *target, IUn return DDERR_NOPALETTEATTACHED; } + if (!(target->surface_desc.ddsCaps.dwCaps & DDSCAPS_VIDEOMEMORY)) + { + WARN("Surface %p is not in video memory.\n", target); + return D3DERR_SURFACENOTINVIDMEM; + } + if (ddraw->flags & DDRAW_NO3D) { ERR_(winediag)("The application wants to create a Direct3D device, "