Bug fixes

Fix a potential problem with multi-thread server.
Fix support for generating Mellow configuration.
This commit is contained in:
Tindy X committed 2019-11-24 00:44:38 +08:00
1 parent 2d9eb3a696
commit 16b7b74260
4 files changed
+102 -19

No files matched your search

+48
View File
@@ -0,0 +1,48 @@
#include <mutex>
#include "misc.h"
//safety lock for multi-thread
typedef std::lock_guard<std::mutex> guarded_mutex;
std::mutex on_configuring, on_emoji, on_rename;
extern string_array emojis, renames;
void try_config_lock()
{
guarded_mutex guard(on_configuring);
}
void try_emoji_lock()
{
guarded_mutex guard(on_emoji);
}
void try_rename_lock()
{
guarded_mutex guard(on_rename);
}
string_array safe_get_emojis()
{
guarded_mutex guard(on_emoji);
return emojis;
}
string_array safe_get_renames()
{
guarded_mutex guard(on_rename);
return renames;
}
void safe_set_emojis(string_array &data)
{
guarded_mutex guard(on_emoji);
emojis.swap(data);
}
void safe_set_renames(string_array &data)
{
guarded_mutex guard(on_rename);
renames.swap(data);
}