6 Nov
2023
6 Nov
'23
2:42 p.m.
On Wed Nov 1 14:46:17 2023 +0000, Yuxuan Shui wrote:
the only place the TP objects are freed is in this function or in `work_item_Release`. we set the pointers to the TP objects to `NULL` here while holding the queue lock (which means no other threads can remove the item from `queue->pending_items`, which in turn means the work item will have at least 1 reference), so `work_item_Release` won't release it. therefore we can safely release it here. i haven't tried to demonstrate this issue but it's clearly there Is it possible to have some demo program that demonstrates this?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/4243#note_51069