Partially fix thread safety issues around _cur_palette
Replaces: 4c59dfb6
See also: https://github.com/OpenTTD/OpenTTD/issues/8712
This commit is contained in:
@@ -53,6 +53,7 @@ GameMode _game_mode;
|
||||
SwitchMode _switch_mode; ///< The next mainloop command.
|
||||
PauseMode _pause_mode;
|
||||
Palette _cur_palette;
|
||||
std::mutex _cur_palette_mutex;
|
||||
std::string _switch_baseset;
|
||||
|
||||
static byte _stringwidth_table[FS_END][224]; ///< Cache containing width of often used characters. @see GetCharacterWidth()
|
||||
@@ -1162,6 +1163,7 @@ void DoPaletteAnimations();
|
||||
|
||||
void GfxInitPalettes()
|
||||
{
|
||||
std::lock_guard<std::mutex> lock_state(_cur_palette_mutex);
|
||||
memcpy(&_cur_palette, &_palette, sizeof(_cur_palette));
|
||||
DoPaletteAnimations();
|
||||
}
|
||||
|
Reference in New Issue
Block a user