mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-18 04:55:27 +00:00
## About The Pull Request I see this stack trace on occasion ``` [2023-07-25 19:04:56.970] RUNTIME: runtime error: get_language_holder() called on a QDELing atom, this will try to re-instantiate the language holder that's about to be deleted, which is bad. - proc name: get language holder (/atom/movable/proc/get_language_holder) - source file: code/game/atoms_movable.dm,1458 - usr: null - src: AdipemDragon (/mob/dead/new_player) - src.loc: null - call stack: - AdipemDragon (/mob/dead/new_player): get language holder() - Text To Speech (/datum/controller/subsystem/tts): play tts(L.E.M.O.N. (/mob/living/silicon/robot), /list (/list), /sound (/sound), /sound (/sound), /datum/language/common (/datum/language/common), 7, 0) - Text To Speech (/datum/controller/subsystem/tts): fire(0) - Text To Speech (/datum/controller/subsystem/tts): ignite(0) - Master (/datum/controller/master): RunQueue() - Master (/datum/controller/master): Loop(2) - Master (/datum/controller/master): StartProcessing(0) ``` Evidently, the list of listeners is *somehow* getting new players or observers that are being qdeleted (maybe hard deleting?) That might be a little hard to track down so until then I figure it's fine to throw in a stack trace and continue so it doesn't brick the message for everyone else ## Why It's Good For The Game Prevents the proc from runtiming and cancelling execution, ergo not playing to everyone else ## Changelog 🆑 Melbert fix: Fixes some occasions which result in TTS messages not playing /🆑