Module: wine Branch: master Commit: b886d06737f5b8d6b83b1029bdd8befad60a1509 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b886d06737f5b8d6b83b1029bd...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Thu May 30 10:05:32 2013 +0200
ddraw: Replace the various BOOLs in struct ddraw with a flags field.
---
dlls/ddraw/ddraw.c | 18 +++++++++--------- dlls/ddraw/ddraw_private.h | 8 +++++--- 2 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c index b2b637e..7eda266 100644 --- a/dlls/ddraw/ddraw.c +++ b/dlls/ddraw/ddraw.c @@ -392,7 +392,7 @@ void ddraw_destroy_swapchain(struct ddraw *ddraw) } }
- ddraw->d3d_initialized = FALSE; + ddraw->flags &= ~DDRAW_D3D_INITIALIZED; } else { @@ -586,11 +586,11 @@ static HRESULT ddraw_attach_d3d_device(struct ddraw *ddraw,
/* Set this NOW, otherwise creating the depth stencil surface will cause a * recursive loop until ram or emulated video memory is full. */ - ddraw->d3d_initialized = TRUE; + ddraw->flags |= DDRAW_D3D_INITIALIZED; hr = wined3d_device_init_3d(ddraw->wined3d_device, swapchain_desc); if (FAILED(hr)) { - ddraw->d3d_initialized = FALSE; + ddraw->flags &= ~DDRAW_D3D_INITIALIZED; return hr; }
@@ -1025,7 +1025,7 @@ static HRESULT WINAPI ddraw7_SetDisplayMode(IDirectDraw7 *iface, DWORD width, DW /* TODO: Lose the primary surface. */ if (SUCCEEDED(hr = wined3d_set_adapter_display_mode(ddraw->wined3d, WINED3DADAPTER_DEFAULT, &mode))) { - ddraw->restore_mode = TRUE; + ddraw->flags |= DDRAW_RESTORE_MODE; restore_mode = TRUE; }
@@ -1088,7 +1088,7 @@ static HRESULT WINAPI ddraw7_RestoreDisplayMode(IDirectDraw7 *iface)
wined3d_mutex_lock();
- if (!ddraw->restore_mode) + if (!(ddraw->flags & DDRAW_RESTORE_MODE)) { wined3d_mutex_unlock(); return DD_OK; @@ -1102,7 +1102,7 @@ static HRESULT WINAPI ddraw7_RestoreDisplayMode(IDirectDraw7 *iface)
if (SUCCEEDED(hr = wined3d_set_adapter_display_mode(ddraw->wined3d, WINED3DADAPTER_DEFAULT, &original_mode))) { - ddraw->restore_mode = FALSE; + ddraw->flags &= ~DDRAW_RESTORE_MODE; restore_mode = FALSE; }
@@ -1687,7 +1687,7 @@ static HRESULT WINAPI ddraw7_Initialize(IDirectDraw7 *iface, GUID *guid)
TRACE("iface %p, guid %s.\n", iface, debugstr_guid(guid));
- if (ddraw->initialized) + if (ddraw->flags & DDRAW_INITIALIZED) return DDERR_ALREADYINITIALIZED;
/* FIXME: To properly take the GUID into account we should call @@ -1695,7 +1695,7 @@ static HRESULT WINAPI ddraw7_Initialize(IDirectDraw7 *iface, GUID *guid) if (guid) FIXME("Ignoring guid %s.\n", debugstr_guid(guid));
- ddraw->initialized = TRUE; + ddraw->flags |= DDRAW_INITIALIZED; return DD_OK; }
@@ -4473,7 +4473,7 @@ static HRESULT WINAPI d3d7_EvictManagedTextures(IDirect3D7 *iface) TRACE("iface %p!\n", iface);
wined3d_mutex_lock(); - if (ddraw->d3d_initialized) + if (ddraw->flags & DDRAW_D3D_INITIALIZED) wined3d_device_evict_managed_resources(ddraw->wined3d_device); wined3d_mutex_unlock();
diff --git a/dlls/ddraw/ddraw_private.h b/dlls/ddraw/ddraw_private.h index 25985bd..6b4fedc 100644 --- a/dlls/ddraw/ddraw_private.h +++ b/dlls/ddraw/ddraw_private.h @@ -56,6 +56,10 @@ struct FvfToDecl struct wined3d_vertex_declaration *decl; };
+#define DDRAW_INITIALIZED 0x00000001 +#define DDRAW_D3D_INITIALIZED 0x00000002 +#define DDRAW_RESTORE_MODE 0x00000004 + struct ddraw { /* Interfaces */ @@ -71,12 +75,10 @@ struct ddraw
/* See comment in IDirectDraw::AddRef */ LONG ref7, ref4, ref2, ref3, ref1, numIfaces; - BOOL initialized;
struct wined3d *wined3d; struct wined3d_device *wined3d_device; - BOOL d3d_initialized; - BOOL restore_mode; + DWORD flags;
struct ddraw_surface *primary; RECT primary_lock;