citra/src
yzct12345 3641b9891d logging: Simplify and make thread-safe
This simplifies the logging system.

This also fixes some lost messages on startup.

The simplification is simple. I removed unused functions and moved most things in the .h to the .cpp. I replaced the unnecessary linked list with its contents laid out as three member variables. Anything that went through the linked list now directly accesses the backends. Generic functions are replaced with those for each specific use case and there aren't many. This change increases coupling but we gain back more KISS and encapsulation.

With those changes it was easy to make it thread-safe. I just removed the mutex and turned a boolean atomic. I was planning to use this thread-safety in my next PR about stacktraces. It was actually async-signal-safety at first but I ended up using a different approach. Anyway getting rid of the linked list is important for that because have the list of backends constantly changing complicates things.
2023-06-30 12:15:51 +03:00
..
android build: Rework CI and move all bundling into new build target. (#6556) 2023-06-26 17:42:00 -07:00
audio_core build: Rework CI and move all bundling into new build target. (#6556) 2023-06-26 17:42:00 -07:00
citra logging: Simplify and make thread-safe 2023-06-30 12:15:51 +03:00
citra_qt logging: Simplify and make thread-safe 2023-06-30 12:15:51 +03:00
common logging: Simplify and make thread-safe 2023-06-30 12:15:51 +03:00
core logging: Simplify and make thread-safe 2023-06-30 12:15:51 +03:00
dedicated_room logging: Simplify and make thread-safe 2023-06-30 12:15:51 +03:00
input_common common, input_common, network: fix warnings 2023-06-17 21:24:20 +05:30
network common, input_common, network: fix warnings 2023-06-17 21:24:20 +05:30
tests logging: Simplify and make thread-safe 2023-06-30 12:15:51 +03:00
video_core common/log: Move Log namespace into the Common namespace 2023-06-30 12:15:51 +03:00
web_service chore: Fix GCC 13 compilation and SoundTouch libraries being installed. (#6593) 2023-06-02 23:11:17 -07:00
.clang-format clang format: add objective c++ formatting 2022-01-10 13:52:39 +01:00
CMakeLists.txt build: Rework CI and move all bundling into new build target. (#6556) 2023-06-26 17:42:00 -07:00