From ca0588d1a1e61404687fb6a6bc4857819fa46e2e Mon Sep 17 00:00:00 2001 From: Axel Davy Date: Sun, 23 Nov 2014 11:44:59 +0100 Subject: [PATCH] st/nine: Queries: return S_FALSE instead of INVALIDCALL when in building query state It is the same behaviour as wine has. Reviewed-by: Ilia Mirkin Reviewed-by: David Heidelberg Signed-off-by: Axel Davy --- src/gallium/state_trackers/nine/query9.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/state_trackers/nine/query9.c b/src/gallium/state_trackers/nine/query9.c index 17c36e510fc..b74a707e3f3 100644 --- a/src/gallium/state_trackers/nine/query9.c +++ b/src/gallium/state_trackers/nine/query9.c @@ -205,7 +205,10 @@ NineQuery9_GetData( struct NineQuery9 *This, DBG("This=%p pData=%p dwSize=%d dwGetDataFlags=%d\n", This, pData, dwSize, dwGetDataFlags); - user_assert(This->state != NINE_QUERY_STATE_RUNNING, D3DERR_INVALIDCALL); + /* according to spec we should return D3DERR_INVALIDCALL here, but + * wine returns S_FALSE because it is apparently the behaviour + * on windows */ + user_assert(This->state != NINE_QUERY_STATE_RUNNING, S_FALSE); user_assert(dwSize == 0 || pData, D3DERR_INVALIDCALL); user_assert(dwGetDataFlags == 0 || dwGetDataFlags == D3DGETDATA_FLUSH, D3DERR_INVALIDCALL); -- 2.30.2