[PATCH 5/5] wined3d: Unify the query issue() implementations.
Henri Verbeet
hverbeet at codeweavers.com
Thu Jul 28 06:29:42 CDT 2016
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
---
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 9592a9a..148f1b4 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
--
2.1.4
More information about the wine-patches
mailing list