[idd] common: use CSRWLock throughout the drivers

Make CSRWLock own the native lock and provide scoped guards for shared,
exclusive, early-unlock, and non-blocking use.

Replace direct SRW lock management throughout the IDD, input driver,
and helper while preserving the existing lock scopes.
This commit is contained in:
Geoffrey McRae
2026-08-11 22:06:31 +10:00
parent 2543366f5f
commit 61a49ebaba
37 changed files with 576 additions and 525 deletions

View File

@@ -20,6 +20,8 @@
#pragma once
#include "CSRWLock.h"
#include "config/CSettings.h"
#include "display/CEdid.h"
#include "display/IddCxCompat.h"
@@ -59,8 +61,8 @@ private:
// Registry-backed changes are serialized before publishing a replacement
// mode list. Readers only hold m_modeLock long enough to take a snapshot.
SRWLOCK m_reloadLock = SRWLOCK_INIT;
mutable SRWLOCK m_modeLock = SRWLOCK_INIT;
CSRWLock m_reloadLock;
mutable CSRWLock m_modeLock;
CSettings::DisplayModes m_modes;
CEdid m_edid;