mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-10 08:00:05 +00:00
Fix: thread safety issue during exiting the game (#9380)
_exit_game is read by the draw-thread to know when to exit, but most of the time written by the game-thread.
This commit is contained in:
parent
281a65b3e1
commit
c12a152ec9
@ -41,7 +41,7 @@ bool _right_button_down; ///< Is right mouse button pressed?
|
||||
bool _right_button_clicked; ///< Is right mouse button clicked?
|
||||
DrawPixelInfo _screen;
|
||||
bool _screen_disable_anim = false; ///< Disable palette animation (important for 32bpp-anim blitter during giant screenshot)
|
||||
bool _exit_game;
|
||||
std::atomic<bool> _exit_game;
|
||||
GameMode _game_mode;
|
||||
SwitchMode _switch_mode; ///< The next mainloop command.
|
||||
PauseMode _pause_mode;
|
||||
|
@ -10,6 +10,7 @@
|
||||
#ifndef OPENTTD_H
|
||||
#define OPENTTD_H
|
||||
|
||||
#include <atomic>
|
||||
#include "core/enum_type.hpp"
|
||||
|
||||
/** Mode which defines the state of the game. */
|
||||
@ -52,7 +53,7 @@ enum DisplayOptions {
|
||||
|
||||
extern GameMode _game_mode;
|
||||
extern SwitchMode _switch_mode;
|
||||
extern bool _exit_game;
|
||||
extern std::atomic<bool> _exit_game;
|
||||
extern bool _save_config;
|
||||
|
||||
/** Modes of pausing we've got */
|
||||
|
Loading…
Reference in New Issue
Block a user