diff --git a/debian/changelog b/debian/changelog index 20b8374..1e2ea02 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +deepin-anything (7.0.31) unstable; urgency=medium + + * fix: Fix deepin-anything-daemon coredump + + -- wangrong Thu, 23 Oct 2025 14:27:25 +0800 + deepin-anything (7.0.30) unstable; urgency=medium * fix: Fix daemon is always in loading state diff --git a/src/daemon/src/core/base_event_handler.cpp b/src/daemon/src/core/base_event_handler.cpp index 02e5f99..4b688c9 100755 --- a/src/daemon/src/core/base_event_handler.cpp +++ b/src/daemon/src/core/base_event_handler.cpp @@ -33,13 +33,6 @@ base_event_handler::base_event_handler(std::shared_ptr con } base_event_handler::~base_event_handler() { - pool_.wait_for_tasks(); - if (!jobs_.empty()) { - // Eat all jobs - for (auto&& job : jobs_) { - eat_job(std::move(job)); - } - } } void base_event_handler::terminate_processing() { @@ -53,6 +46,14 @@ void base_event_handler::terminate_processing() { oss << thread_id; spdlog::info("Timer thread {} has exited", oss.str()); } + + pool_.wait_for_tasks(); + if (!jobs_.empty()) { + // Eat all jobs + for (auto&& job : jobs_) { + eat_job(std::move(job)); + } + } } void base_event_handler::set_index_invalid_and_restart() {