[PATCH 5/6] wined3d: Acquire shader references for command lists by inspecting CS packets.
Jan Sikorski
jsikorski at codeweavers.com
Thu Dec 2 04:29:51 CST 2021
Signed-off-by: Jan Sikorski <jsikorski at codeweavers.com>
---
dlls/wined3d/cs.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c
index a651abbfef1..786a5db9842 100644
--- a/dlls/wined3d/cs.c
+++ b/dlls/wined3d/cs.c
@@ -3641,6 +3641,14 @@ static void wined3d_cs_packet_decref_objects(const struct wined3d_cs_packet *pac
}
break;
}
+ case WINED3D_CS_OP_SET_SHADER:
+ {
+ struct wined3d_cs_set_shader *op
+ = (struct wined3d_cs_set_shader *)packet->data;
+ if (op->shader)
+ wined3d_shader_decref(op->shader);
+ break;
+ }
default:
break;
}
@@ -3664,6 +3672,14 @@ static void wined3d_cs_packet_incref_objects(struct wined3d_cs_packet *packet)
}
break;
}
+ case WINED3D_CS_OP_SET_SHADER:
+ {
+ struct wined3d_cs_set_shader *op
+ = (struct wined3d_cs_set_shader *)packet->data;
+ if (op->shader)
+ wined3d_shader_incref(op->shader);
+ break;
+ }
default:
break;
}
--
2.32.0
More information about the wine-devel
mailing list