summaryrefslogtreecommitdiff
path: root/src/lib/job.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-06-12 00:27:33 +0200
committerCarl Hetherington <cth@carlh.net>2025-06-14 23:43:13 +0200
commita12a943c99ba4aba122f91c93b078d2e87146b32 (patch)
tree93e149bc2d6f9c2ff98aa05c5d51e096dd0c6598 /src/lib/job.h
parent6d2d4973ccd5d4c78414d28988a74dfa7287f001 (diff)
Use a new UISignal which checks thread safety slightly.3052-hang
This adds a wrapper around signals2::signal which checks that emission happens from the GUI thread, for signals whose handlers must be called in the UI thread. I'm not sure how helpful it really is but maybe it catches some bad situations.
Diffstat (limited to 'src/lib/job.h')
-rw-r--r--src/lib/job.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/job.h b/src/lib/job.h
index 9b5fdfa6e..a80d66cda 100644
--- a/src/lib/job.h
+++ b/src/lib/job.h
@@ -28,6 +28,7 @@
#define DCPOMATIC_JOB_H
+#include "signal.h"
#include "signaller.h"
#include <boost/atomic.hpp>
#include <boost/signals2.hpp>
@@ -108,9 +109,9 @@ public:
void set_rate_limit_progress(bool rate_limit);
- boost::signals2::signal<void()> Progress;
+ UISignal<void()> Progress;
/** Emitted from the UI thread when the job is finished */
- boost::signals2::signal<void (Result)> Finished;
+ UISignal<void (Result)> Finished;
/** Emitted from the job thread when the job is finished */
boost::signals2::signal<void (Result)> FinishedImmediate;