1. 13 Aug, 2021 3 commits
    • yzct12345's avatar
      logging: Display backtrace on crash · 81ed54d1
      yzct12345 authored
      This implements backtraces so we don't have to tell users how to use gdb anymore.
      
      This prints a backtrace after abort or segfault is detected. It also fixes the log getting cut off with the last line containing only a bracket. This change lets us know what caused a crash not just what happened the few seconds before it.
      
      I only know how to add support for Linux with GCC. Also this doesn't work outside of C/C++ such as in dynarmic or certain parts of graphics drivers. The good thing is that it'll try and just crash again but the stack frames are still there so the core dump will work just like before.
      81ed54d1
    • yzct12345's avatar
      logging: Simplify and make thread-safe · 001675dc
      yzct12345 authored
      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.
      001675dc
    • bunnei's avatar
      Merge pull request #6862 from german77/badsdl · 71d8d84b
      bunnei authored
      input_common: Disable sdl raw input mode
      71d8d84b
  2. 12 Aug, 2021 3 commits
  3. 11 Aug, 2021 4 commits
  4. 10 Aug, 2021 4 commits
  5. 09 Aug, 2021 1 commit
  6. 08 Aug, 2021 11 commits
  7. 07 Aug, 2021 14 commits