7
mirror of https://gitlab.com/kicad/code/kicad.git synced 2025-04-11 15:40:10 +00:00

Fix m_zoneLayerOverrides data race in pad.h

From Coverity issue 542093
This commit is contained in:
JamesJCode 2025-02-22 14:45:03 +00:00
parent ee614161d7
commit 1e84d1e496
2 changed files with 3 additions and 1 deletions

View File

@ -201,6 +201,8 @@ void PAD::ClearZoneLayerOverrides()
const ZONE_LAYER_OVERRIDE& PAD::GetZoneLayerOverride( PCB_LAYER_ID aLayer ) const
{
std::unique_lock<std::mutex> cacheLock( m_zoneLayerOverridesMutex );
static const ZONE_LAYER_OVERRIDE defaultOverride = ZLO_NONE;
auto it = m_zoneLayerOverrides.find( aLayer );
return it != m_zoneLayerOverrides.end() ? it->second : defaultOverride;

View File

@ -955,6 +955,6 @@ private:
int m_lengthPadToDie; // Length net from pad to die, inside the package
std::mutex m_zoneLayerOverridesMutex;
mutable std::mutex m_zoneLayerOverridesMutex;
std::map<PCB_LAYER_ID, ZONE_LAYER_OVERRIDE> m_zoneLayerOverrides;
};