ole32: Add debug info to RunningObjectTable critical section.

So it's possible to easily debug deadlocks involving the Internal ROT object

Signed-off-by: Lorenzo Ferrillo <lorenzofersteam@live.it>
This commit is contained in:
Lorenzo Ferrillo 2023-09-10 18:15:21 +02:00 committed by Alexandre Julliard
parent 7860dd0641
commit 516f68b64f

View file

@ -707,10 +707,19 @@ static const IRunningObjectTableVtbl VT_RunningObjectTableImpl =
RunningObjectTableImpl_EnumRunning
};
static RunningObjectTableImpl rot;
static RTL_CRITICAL_SECTION_DEBUG critsect_debug =
{
0, 0, &rot.lock,
{ &critsect_debug.ProcessLocksList, &critsect_debug.ProcessLocksList },
0, 0, { (DWORD_PTR)(__FILE__ ": RunningObjectTable_section") }
};
static RunningObjectTableImpl rot =
{
.IRunningObjectTable_iface.lpVtbl = &VT_RunningObjectTableImpl,
.lock.LockCount = -1,
.lock = { &critsect_debug, -1, 0, 0, 0, 0 },
.rot = LIST_INIT(rot.rot),
};