Module: wine Branch: master Commit: e7810388e2ee6550876457fb26bbab6a7b627c19 URL: https://source.winehq.org/git/wine.git/?a=commit;h=e7810388e2ee6550876457fb2...
Author: Jan Sikorski jsikorski@codeweavers.com Date: Mon Jan 24 13:58:59 2022 +0100
wined3d: Acquire references to depth/stencil views for command lists by inspecting CS packets.
Signed-off-by: Jan Sikorski jsikorski@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/wined3d/cs.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c index bb38dd0d3ab..221a79faa0c 100644 --- a/dlls/wined3d/cs.c +++ b/dlls/wined3d/cs.c @@ -3584,6 +3584,16 @@ static void wined3d_cs_packet_decref_objects(const struct wined3d_cs_packet *pac break; }
+ case WINED3D_CS_OP_SET_DEPTH_STENCIL_VIEW: + { + struct wined3d_cs_set_depth_stencil_view *op; + + op = (struct wined3d_cs_set_depth_stencil_view *)packet->data; + if (op->view) + wined3d_rendertarget_view_decref(op->view); + break; + } + default: break; } @@ -3686,6 +3696,16 @@ static void wined3d_cs_packet_incref_objects(struct wined3d_cs_packet *packet) break; }
+ case WINED3D_CS_OP_SET_DEPTH_STENCIL_VIEW: + { + struct wined3d_cs_set_depth_stencil_view *op; + + op = (struct wined3d_cs_set_depth_stencil_view *)packet->data; + if (op->view) + wined3d_rendertarget_view_incref(op->view); + break; + } + default: break; }