From 71d00d2208958cc6c3ab7b0e25d1c70aba55f8a9 Mon Sep 17 00:00:00 2001 From: Matt Borgerson Date: Fri, 26 Jul 2024 17:21:01 -0700 Subject: [PATCH] nv2a/vk: Ensure texture bindings exist before dirty check --- hw/xbox/nv2a/pgraph/vk/texture.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/hw/xbox/nv2a/pgraph/vk/texture.c b/hw/xbox/nv2a/pgraph/vk/texture.c index ea6adf671c..70fc9c7023 100644 --- a/hw/xbox/nv2a/pgraph/vk/texture.c +++ b/hw/xbox/nv2a/pgraph/vk/texture.c @@ -1283,8 +1283,10 @@ static void create_texture(PGRAPHState *pg, int texture_idx) static bool check_textures_dirty(PGRAPHState *pg) { + PGRAPHVkState *r = pg->vk_renderer_state; + for (int i = 0; i < NV2A_MAX_TEXTURES; i++) { - if (pg->texture_dirty[i]) { + if (!r->texture_bindings[i] || pg->texture_dirty[i]) { return true; } } @@ -1324,7 +1326,8 @@ void pgraph_vk_bind_textures(NV2AState *d) r->texture_bindings[i] = &r->dummy_texture; continue; } - if (!pg->texture_dirty[i]) { // FIXME: Fails to check memory + if (r->texture_bindings[i] && !pg->texture_dirty[i]) { + // FIXME: Fails to check memory continue; }