diff --git a/libultraship b/libultraship index a5d84b294..c2555d1cc 160000 --- a/libultraship +++ b/libultraship @@ -1 +1 @@ -Subproject commit a5d84b29429dcd9b32fb1d8b169b6dd269e6c979 +Subproject commit c2555d1cca2b7921c5b6790bbf0f6e66fe0433fb diff --git a/soh/soh/SaveManager.cpp b/soh/soh/SaveManager.cpp index 0a96f9f19..b6fd0cb07 100644 --- a/soh/soh/SaveManager.cpp +++ b/soh/soh/SaveManager.cpp @@ -1000,7 +1000,7 @@ void SaveManager::SaveSection(int fileNum, int sectionID, bool threaded) { auto saveContext = new SaveContext; memcpy(saveContext, &gSaveContext, sizeof(gSaveContext)); if (threaded) { - smThreadPool->push_task_back(&SaveManager::SaveFileThreaded, this, fileNum, saveContext, sectionID); + smThreadPool->detach_task(std::bind(&SaveManager::SaveFileThreaded, this, fileNum, saveContext, sectionID)); } else { SaveFileThreaded(fileNum, saveContext, sectionID); } @@ -1091,7 +1091,7 @@ void SaveManager::LoadFile(int fileNum) { void SaveManager::ThreadPoolWait() { if (smThreadPool) { - smThreadPool->wait_for_tasks(); + smThreadPool->wait(); } } diff --git a/soh/soh/SaveManager.h b/soh/soh/SaveManager.h index 310ecda7d..817fc6fbf 100644 --- a/soh/soh/SaveManager.h +++ b/soh/soh/SaveManager.h @@ -39,7 +39,10 @@ typedef struct { #include #include #include -#include "thread-pool/BS_thread_pool.hpp" + +#define BS_THREAD_POOL_ENABLE_PRIORITY +#define BS_THREAD_POOL_ENABLE_PAUSE +#include #include "z64save.h"