summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/nine/query9.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/state_trackers/nine/query9.c')
-rw-r--r--src/gallium/state_trackers/nine/query9.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/state_trackers/nine/query9.c b/src/gallium/state_trackers/nine/query9.c
index 937255667be..6df4ead08c4 100644
--- a/src/gallium/state_trackers/nine/query9.c
+++ b/src/gallium/state_trackers/nine/query9.c
@@ -163,10 +163,15 @@ NineQuery9_Issue( struct NineQuery9 *This,
DBG("This=%p dwIssueFlags=%d\n", This, dwIssueFlags);
- user_assert((dwIssueFlags == D3DISSUE_BEGIN && !This->instant) ||
+ user_assert((dwIssueFlags == D3DISSUE_BEGIN) ||
(dwIssueFlags == 0) ||
(dwIssueFlags == D3DISSUE_END), D3DERR_INVALIDCALL);
+ /* Wine tests: always return D3D_OK on D3DISSUE_BEGIN
+ * even when the call is supposed to be forbidden */
+ if (dwIssueFlags == D3DISSUE_BEGIN && This->instant)
+ return D3D_OK;
+
if (dwIssueFlags == D3DISSUE_BEGIN) {
if (This->state == NINE_QUERY_STATE_RUNNING) {
pipe->end_query(pipe, This->pq);