Henri Verbeet : wined3d: Unify the query issue() implementations.

Alexandre Julliard julliard at winehq.org
Thu Jul 28 09:38:55 CDT 2016


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

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Thu Jul 28 13:29:42 2016 +0200

wined3d: Unify the query issue() implementations.

Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wined3d/query.c           | 42 ++++++++++++------------------------------
 dlls/wined3d/wined3d_private.h |  2 +-
 2 files changed, 13 insertions(+), 31 deletions(-)

diff --git a/dlls/wined3d/query.c b/dlls/wined3d/query.c
index c6d3633..55e63e9 100644
--- a/dlls/wined3d/query.c
+++ b/dlls/wined3d/query.c
@@ -350,7 +350,14 @@ HRESULT CDECL wined3d_query_issue(struct wined3d_query *query, DWORD flags)
 {
     TRACE("query %p, flags %#x.\n", query, flags);
 
-    return query->query_ops->query_issue(query, flags);
+    query->query_ops->query_issue(query, flags);
+
+    if (flags & WINED3DISSUE_BEGIN)
+        query->state = QUERY_BUILDING;
+    else
+        query->state = QUERY_SIGNALLED;
+
+    return WINED3D_OK;
 }
 
 static BOOL wined3d_occlusion_query_ops_poll(struct wined3d_query *query)
@@ -434,7 +441,7 @@ enum wined3d_query_type CDECL wined3d_query_get_type(const struct wined3d_query
     return query->type;
 }
 
-static HRESULT wined3d_event_query_ops_issue(struct wined3d_query *query, DWORD flags)
+static void wined3d_event_query_ops_issue(struct wined3d_query *query, DWORD flags)
 {
     TRACE("query %p, flags %#x.\n", query, flags);
 
@@ -449,16 +456,9 @@ static HRESULT wined3d_event_query_ops_issue(struct wined3d_query *query, DWORD
         /* Started implicitly at query creation. */
         ERR("Event query issued with START flag - what to do?\n");
     }
-
-    if (flags & WINED3DISSUE_BEGIN)
-        query->state = QUERY_BUILDING;
-    else
-        query->state = QUERY_SIGNALLED;
-
-    return WINED3D_OK;
 }
 
-static HRESULT wined3d_occlusion_query_ops_issue(struct wined3d_query *query, DWORD flags)
+static void wined3d_occlusion_query_ops_issue(struct wined3d_query *query, DWORD flags)
 {
     struct wined3d_occlusion_query *oq = wined3d_occlusion_query_from_query(query);
     struct wined3d_device *device = query->device;
@@ -524,13 +524,6 @@ static HRESULT wined3d_occlusion_query_ops_issue(struct wined3d_query *query, DW
             }
         }
     }
-
-    if (flags & WINED3DISSUE_BEGIN)
-        query->state = QUERY_BUILDING;
-    else
-        query->state = QUERY_SIGNALLED;
-
-    return WINED3D_OK; /* can be WINED3DERR_INVALIDCALL.    */
 }
 
 static BOOL wined3d_timestamp_query_ops_poll(struct wined3d_query *query)
@@ -571,7 +564,7 @@ static BOOL wined3d_timestamp_query_ops_poll(struct wined3d_query *query)
     return available;
 }
 
-static HRESULT wined3d_timestamp_query_ops_issue(struct wined3d_query *query, DWORD flags)
+static void wined3d_timestamp_query_ops_issue(struct wined3d_query *query, DWORD flags)
 {
     struct wined3d_timestamp_query *tq = wined3d_timestamp_query_from_query(query);
     struct wined3d_device *device = query->device;
@@ -593,11 +586,7 @@ static HRESULT wined3d_timestamp_query_ops_issue(struct wined3d_query *query, DW
         GL_EXTCALL(glQueryCounter(tq->id, GL_TIMESTAMP));
         checkGLcall("glQueryCounter()");
         context_release(context);
-
-        query->state = QUERY_SIGNALLED;
     }
-
-    return WINED3D_OK;
 }
 
 static BOOL wined3d_timestamp_disjoint_query_ops_poll(struct wined3d_query *query)
@@ -607,16 +596,9 @@ static BOOL wined3d_timestamp_disjoint_query_ops_poll(struct wined3d_query *quer
     return TRUE;
 }
 
-static HRESULT wined3d_timestamp_disjoint_query_ops_issue(struct wined3d_query *query, DWORD flags)
+static void wined3d_timestamp_disjoint_query_ops_issue(struct wined3d_query *query, DWORD flags)
 {
     TRACE("query %p, flags %#x.\n", query, flags);
-
-    if (flags & WINED3DISSUE_BEGIN)
-        query->state = QUERY_BUILDING;
-    if (flags & WINED3DISSUE_END)
-        query->state = QUERY_SIGNALLED;
-
-    return WINED3D_OK;
 }
 
 static const struct wined3d_query_ops event_query_ops =
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index c9e5d5c..b3acbbd 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -1380,7 +1380,7 @@ enum wined3d_query_state
 struct wined3d_query_ops
 {
     BOOL (*query_poll)(struct wined3d_query *query);
-    HRESULT (*query_issue)(struct wined3d_query *query, DWORD flags);
+    void (*query_issue)(struct wined3d_query *query, DWORD flags);
 };
 
 struct wined3d_query




More information about the wine-cvs mailing list