Fix crash due to modify same collection concurrently

This commit is contained in:
Noisyfox
2025-10-07 09:56:39 +08:00
parent fb4bb83546
commit 4ee98b1807

View File

@@ -667,6 +667,9 @@ namespace Slic3r
void DeviceManager::parse_user_print_info(std::string body) void DeviceManager::parse_user_print_info(std::string body)
{ {
BOOST_LOG_TRIVIAL(trace) << "DeviceManager::parse_user_print_info";
std::lock_guard<std::mutex> lock(listMutex);
if (device_subseries.size() <= 0) { if (device_subseries.size() <= 0) {
device_subseries = DevPrinterConfigUtil::get_all_subseries(); device_subseries = DevPrinterConfigUtil::get_all_subseries();
if (device_subseries.size() <= 0) { if (device_subseries.size() <= 0) {
@@ -674,8 +677,6 @@ namespace Slic3r
} }
} }
BOOST_LOG_TRIVIAL(trace) << "DeviceManager::parse_user_print_info";
std::lock_guard<std::mutex> lock(listMutex);
std::set<std::string> new_list; std::set<std::string> new_list;
try try
{ {