From b044e95a825c83582f9d3c57606ec46edeb1e3cc Mon Sep 17 00:00:00 2001 From: Maximilian Seidler Date: Tue, 24 Jun 2025 09:07:03 +0200 Subject: [PATCH] make members of the atomic pointers private --- include/hyprutils/memory/Atomic.hpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/include/hyprutils/memory/Atomic.hpp b/include/hyprutils/memory/Atomic.hpp index 3fcb0f0..1ccf152 100644 --- a/include/hyprutils/memory/Atomic.hpp +++ b/include/hyprutils/memory/Atomic.hpp @@ -22,6 +22,10 @@ namespace Hyprutils::Memory { }; } + // Forward declaration for friend + template + class CAtomicWeakPointer; + template class CAtomicSharedPointer { template @@ -157,11 +161,15 @@ namespace Hyprutils::Memory { return m_ptr.impl_ ? m_ptr.impl_->ref() : 0; } + private: std::lock_guard implLockGuard() const { return ((Atomic_::impl*)m_ptr.impl_)->lockGuard(); } CSharedPointer m_ptr; + + template + friend class CAtomicWeakPointer; }; template @@ -320,6 +328,7 @@ namespace Hyprutils::Memory { return CAtomicSharedPointer(m_ptr.impl_); } + private: std::lock_guard implLockGuard() const { return ((Atomic_::impl*)m_ptr.impl_)->lockGuard(); }