Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Game Crash: System.ObjectDisposedException in Gameloop Tick TTS #34862

Closed
nomfli opened this issue Feb 3, 2025 · 1 comment
Closed

Game Crash: System.ObjectDisposedException in Gameloop Tick TTS #34862

nomfli opened this issue Feb 3, 2025 · 1 comment
Labels
S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels.

Comments

@nomfli
Copy link

nomfli commented Feb 3, 2025

The game crashes during the main game loop with an ObjectDisposedException. The error occurs in MemoryContentRoot.TryGetFile(), indicating that a disposed ReaderWriterLockSlim is being accessed.

When you play, after a while tts stops working. At the same time you can calmly continue playing, after some more time the game crashes.
System Info:
OS: mac M1 Air
Installed by steam.

I pinned log output:

[ERRO] runtime: Caught exception in "GameLoop Tick"
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Threading.ReaderWriterLockSlim'.
   at System.Threading.ReaderWriterLockSlim.TryEnterReadLockCore(TimeoutTracker timeout)
   at Robust.Shared.ContentPack.MemoryContentRoot.TryGetFile(ResPath relPath, Stream& stream) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/ContentPack/MemoryContentRoot.cs:line 90
   at Robust.Shared.ContentPack.ResourceManager.TryContentFileRead(Nullable`1 path, Stream& fileStream) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/ContentPack/ResourceManager.cs:line 180
   at Robust.Client.ResourceManagement.AudioResource.Load(IDependencyCollection dependencies, ResPath path) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/ResourceManagement/ResourceTypes/AudioResource.cs:line 22
   at Content.Client.Corvax.TTS.TTSSystem.OnPlayTTS(PlayTTSEvent ev) in /home/runner/work/space-station-14/space-station-14/Content.Client/Corvax/TTS/TTSSystem.cs:line 74
   at Robust.Client.GameObjects.ClientEntityManager.DispatchReceivedNetworkMsg(MsgEntity message) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameObjects/ClientEntityManager.cs:line 245
   at Robust.Client.GameObjects.ClientEntityManager.TickUpdate(Single frameTime, Boolean noPredictions, Histogram histogram) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameObjects/ClientEntityManager.cs:line 190
   at Robust.Client.GameStates.ClientGameStateManager.ApplyGameState() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameStates/ClientGameStateManager.cs:line 284
   at Robust.Client.GameController.Tick(FrameEventArgs frameEventArgs) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameController/GameController.cs:line 552
   at Robust.Shared.Timing.GameLoop.Run() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/Timing/GameLoop.cs:line 135
[ERRO] runtime: Caught exception in "GameLoop Tick"
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Threading.ReaderWriterLockSlim'.
   at System.Threading.ReaderWriterLockSlim.TryEnterReadLockCore(TimeoutTracker timeout)
   at Robust.Shared.ContentPack.MemoryContentRoot.TryGetFile(ResPath relPath, Stream& stream) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/ContentPack/MemoryContentRoot.cs:line 90
   at Robust.Shared.ContentPack.ResourceManager.TryContentFileRead(Nullable`1 path, Stream& fileStream) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/ContentPack/ResourceManager.cs:line 180
   at Robust.Client.ResourceManagement.AudioResource.Load(IDependencyCollection dependencies, ResPath path) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/ResourceManagement/ResourceTypes/AudioResource.cs:line 22
   at Content.Client.Corvax.TTS.TTSSystem.OnPlayTTS(PlayTTSEvent ev) in /home/runner/work/space-station-14/space-station-14/Content.Client/Corvax/TTS/TTSSystem.cs:line 74
   at Robust.Client.GameObjects.ClientEntityManager.DispatchReceivedNetworkMsg(MsgEntity message) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameObjects/ClientEntityManager.cs:line 245
   at Robust.Client.GameObjects.ClientEntityManager.TickUpdate(Single frameTime, Boolean noPredictions, Histogram histogram) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameObjects/ClientEntityManager.cs:line 190
   at Robust.Client.GameStates.ClientGameStateManager.ApplyGameState() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameStates/ClientGameStateManager.cs:line 284
   at Robust.Client.GameController.Tick(FrameEventArgs frameEventArgs) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameController/GameController.cs:line 552
   at Robust.Shared.Timing.GameLoop.Run() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/Timing/GameLoop.cs:line 135
[ERRO] runtime: Caught exception in "GameLoop Tick"
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Threading.ReaderWriterLockSlim'.
   at System.Threading.ReaderWriterLockSlim.TryEnterReadLockCore(TimeoutTracker timeout)
   at Robust.Shared.ContentPack.MemoryContentRoot.TryGetFile(ResPath relPath, Stream& stream) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/ContentPack/MemoryContentRoot.cs:line 90
   at Robust.Shared.ContentPack.ResourceManager.TryContentFileRead(Nullable`1 path, Stream& fileStream) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/ContentPack/ResourceManager.cs:line 180
   at Robust.Client.ResourceManagement.AudioResource.Load(IDependencyCollection dependencies, ResPath path) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/ResourceManagement/ResourceTypes/AudioResource.cs:line 22
   at Content.Client.Corvax.TTS.TTSSystem.OnPlayTTS(PlayTTSEvent ev) in /home/runner/work/space-station-14/space-station-14/Content.Client/Corvax/TTS/TTSSystem.cs:line 74
   at Robust.Client.GameObjects.ClientEntityManager.DispatchReceivedNetworkMsg(MsgEntity message) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameObjects/ClientEntityManager.cs:line 245
   at Robust.Client.GameObjects.ClientEntityManager.TickUpdate(Single frameTime, Boolean noPredictions, Histogram histogram) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameObjects/ClientEntityManager.cs:line 190
   at Robust.Client.GameStates.ClientGameStateManager.ApplyGameState() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameStates/ClientGameStateManager.cs:line 284
   at Robust.Client.GameController.Tick(FrameEventArgs frameEventArgs) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameController/GameController.cs:line 552
   at Robust.Shared.Timing.GameLoop.Run() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/Timing/GameLoop.cs:line 135
[ERRO] runtime: Caught exception in "GameLoop Tick"
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Threading.ReaderWriterLockSlim'.
   at System.Threading.ReaderWriterLockSlim.TryEnterReadLockCore(TimeoutTracker timeout)
   at Robust.Shared.ContentPack.MemoryContentRoot.TryGetFile(ResPath relPath, Stream& stream) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/ContentPack/MemoryContentRoot.cs:line 90
   at Robust.Shared.ContentPack.ResourceManager.TryContentFileRead(Nullable`1 path, Stream& fileStream) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/ContentPack/ResourceManager.cs:line 180
   at Robust.Client.ResourceManagement.AudioResource.Load(IDependencyCollection dependencies, ResPath path) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/ResourceManagement/ResourceTypes/AudioResource.cs:line 22
   at Content.Client.Corvax.TTS.TTSSystem.OnPlayTTS(PlayTTSEvent ev) in /home/runner/work/space-station-14/space-station-14/Content.Client/Corvax/TTS/TTSSystem.cs:line 74
   at Robust.Client.GameObjects.ClientEntityManager.DispatchReceivedNetworkMsg(MsgEntity message) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameObjects/ClientEntityManager.cs:line 245
   at Robust.Client.GameObjects.ClientEntityManager.TickUpdate(Single frameTime, Boolean noPredictions, Histogram histogram) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameObjects/ClientEntityManager.cs:line 190
   at Robust.Client.GameStates.ClientGameStateManager.ApplyGameState() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameStates/ClientGameStateManager.cs:line 284
   at Robust.Client.GameController.Tick(FrameEventArgs frameEventArgs) in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Client/GameController/GameController.cs:line 552
   at Robust.Shared.Timing.GameLoop.Run() in /home/runner/work/RobustToolbox/RobustToolbox/Robust.Shared/Timing/GameLoop.cs:line 135
libc++abi: terminating
@github-actions github-actions bot added the S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. label Feb 3, 2025
@metalgearsloth
Copy link
Contributor

Not our repo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels.
Projects
None yet
Development

No branches or pull requests

2 participants