diff --git a/core/libs/prx/libkernel/Equeue/src/FileEvent.cpp b/core/libs/prx/libkernel/Equeue/src/FileEvent.cpp index ba078db53b..e7fab097d3 100644 --- a/core/libs/prx/libkernel/Equeue/src/FileEvent.cpp +++ b/core/libs/prx/libkernel/Equeue/src/FileEvent.cpp @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -770,7 +771,14 @@ int AddVnodeEvent(const KernelEqueueRef& queue, int descriptor, std::uint32_t ff CloseHostWatch(host); return result == EQUEUE_OK ? 0 : result & 0xffff; } - std::thread(RunHostWatch, watch, std::move(host)).detach(); + std::thread([watch, host = std::move(host)]() mutable { + try { + RunHostWatch(watch, std::move(host)); + } catch (const std::exception& error) { + std::fprintf(stderr, "%s\n", error.what()); + std::fflush(stderr); + } + }).detach(); return 0; }