From a43bedcceced5c21ad36578ed823e6099af78214 Mon Sep 17 00:00:00 2001 From: Vaxry Date: Tue, 2 Dec 2025 22:20:45 +0000 Subject: [PATCH] backend: move logger to backend --- include/aquamarine/backend/Backend.hpp | 2 ++ src/backend/Backend.cpp | 10 ++++++---- src/backend/Logger.hpp | 2 -- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/include/aquamarine/backend/Backend.hpp b/include/aquamarine/backend/Backend.hpp index 3160c9f..dfddb81 100644 --- a/include/aquamarine/backend/Backend.hpp +++ b/include/aquamarine/backend/Backend.hpp @@ -13,6 +13,7 @@ #include "Session.hpp" namespace Aquamarine { + class CLogger; class IOutput; class IPointer; class IKeyboard; @@ -165,6 +166,7 @@ namespace Aquamarine { SBackendOptions options; Hyprutils::Memory::CWeakPointer self; std::vector> sessionFDs; + Hyprutils::Memory::CSharedPointer logger; struct { int fd = -1; diff --git a/src/backend/Backend.cpp b/src/backend/Backend.cpp index ee17b7a..c3e5be8 100644 --- a/src/backend/Backend.cpp +++ b/src/backend/Backend.cpp @@ -59,12 +59,13 @@ Hyprutils::Memory::CSharedPointer Aquamarine::CBackend::create(const s auto backend = SP(new CBackend()); backend->options = options; + backend->logger = Hyprutils::Memory::makeShared(); backend->implementationOptions = backends; backend->self = backend; - g_logger->m_loggerConnection = options.logConnection; - g_logger->m_logFn = options.logFunction; - g_logger->updateLevels(); + backend->logger->m_loggerConnection = options.logConnection; + backend->logger->m_logFn = options.logFunction; + backend->logger->updateLevels(); if (backends.size() <= 0) return nullptr; @@ -183,7 +184,8 @@ bool Aquamarine::CBackend::start() { } void Aquamarine::CBackend::log(eBackendLogLevel level, const std::string& msg) { - g_logger->log(level, msg); + if (logger) + logger->log(level, msg); } std::vector> Aquamarine::CBackend::getPollFDs() { diff --git a/src/backend/Logger.hpp b/src/backend/Logger.hpp index 041688f..0cdfabf 100644 --- a/src/backend/Logger.hpp +++ b/src/backend/Logger.hpp @@ -34,6 +34,4 @@ namespace Aquamarine { std::function m_logFn; Hyprutils::Memory::CSharedPointer m_loggerConnection; }; - - inline Hyprutils::Memory::CSharedPointer g_logger = Hyprutils::Memory::makeShared(); }; \ No newline at end of file