summaryrefslogtreecommitdiff
path: root/src/database/env_esp.cpp
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2023-05-22 15:34:40 +1000
committerjacqueline <me@jacqueline.id.au>2023-05-22 15:35:50 +1000
commitda977aaa3feb397c426563da8897d51ebeba8d1f (patch)
tree3daf9278518b2cace7f26ec67e7eb486ba6adcf2 /src/database/env_esp.cpp
parenta6ab1504058304012791281f9eb42c262745888f (diff)
parent5ac4d3949cd7430e0d4c994bbc528e8e4fa91337 (diff)
downloadtangara-fw-da977aaa3feb397c426563da8897d51ebeba8d1f.tar.gz
Merge branch 'main' into state-machines
Diffstat (limited to 'src/database/env_esp.cpp')
-rw-r--r--src/database/env_esp.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/database/env_esp.cpp b/src/database/env_esp.cpp
index 71d4fcea..3bc68984 100644
--- a/src/database/env_esp.cpp
+++ b/src/database/env_esp.cpp
@@ -29,10 +29,12 @@
#include "leveldb/slice.h"
#include "leveldb/status.h"
-#include "db_task.hpp"
+#include "tasks.hpp"
namespace leveldb {
+std::weak_ptr<tasks::Worker> sBackgroundThread;
+
std::string ErrToStr(FRESULT err) {
switch (err) {
case FR_OK:
@@ -455,8 +457,11 @@ EspEnv::EspEnv() {}
void EspEnv::Schedule(
void (*background_work_function)(void* background_work_arg),
void* background_work_arg) {
- database::SendToDbTask(
- [=]() { std::invoke(background_work_function, background_work_arg); });
+ auto worker = sBackgroundThread.lock();
+ if (worker) {
+ worker->Dispatch<void>(
+ [=]() { std::invoke(background_work_function, background_work_arg); });
+ }
}
} // namespace leveldb