frontend/nine: Skip invalid swvp calls
Without this it may crash running wine tests. According to the test themselves, the correct behaviour is a bit more complicated, but that's a first step. cc: mesa-stable Signed-off-by: Axel Davy <davyaxel0@gmail.com> Acked-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18021>
This commit is contained in:
@@ -2384,6 +2384,9 @@ CSMT_ITEM_NO_WAIT(nine_context_draw_primitive,
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
if (context->vs && context->vs->swvp_only && !context->swvp)
|
||||
return;
|
||||
|
||||
nine_update_state(device);
|
||||
|
||||
init_draw_info(&info, &draw, device, PrimitiveType, PrimitiveCount);
|
||||
@@ -2409,6 +2412,9 @@ CSMT_ITEM_NO_WAIT(nine_context_draw_indexed_primitive,
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
if (context->vs && context->vs->swvp_only && !context->swvp)
|
||||
return;
|
||||
|
||||
nine_update_state(device);
|
||||
|
||||
init_draw_info(&info, &draw, device, PrimitiveType, PrimitiveCount);
|
||||
@@ -2439,6 +2445,9 @@ CSMT_ITEM_NO_WAIT(nine_context_draw_indexed_primitive_from_vtxbuf_idxbuf,
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
if (context->vs && context->vs->swvp_only && !context->swvp)
|
||||
return;
|
||||
|
||||
nine_update_state(device);
|
||||
|
||||
init_draw_info(&info, &draw, device, PrimitiveType, PrimitiveCount);
|
||||
|
Reference in New Issue
Block a user