diff options
author | David Robillard <d@drobilla.net> | 2022-08-10 12:52:18 -0400 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2022-08-17 13:50:57 -0400 |
commit | cc5527981ecc76398ec57097e79d5662e7b98151 (patch) | |
tree | fcb0a8b7807efa51e4e042b449e2f1c405548d38 | |
parent | e67d8439326d886315ccddd2d7a842df0c45359f (diff) | |
download | jalv-cc5527981ecc76398ec57097e79d5662e7b98151.tar.gz jalv-cc5527981ecc76398ec57097e79d5662e7b98151.tar.bz2 jalv-cc5527981ecc76398ec57097e79d5662e7b98151.zip |
Propagate worker errors to the scheduler when possible
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | src/worker.c | 7 |
2 files changed, 6 insertions, 4 deletions
@@ -15,11 +15,12 @@ jalv (1.6.7) unstable; urgency=medium * Fix spurious transport messages * Flush stdout after printing control values in console interface * Print status information consistently to stdout + * Propagate worker errors to the scheduler when possible * Remove Gtkmm interface * Remove Qt4 support * Switch to meson build system - -- David Robillard <d@drobilla.net> Wed, 10 Aug 2022 16:17:35 +0000 + -- David Robillard <d@drobilla.net> Wed, 10 Aug 2022 16:51:40 +0000 jalv (1.6.6) stable; urgency=medium diff --git a/src/worker.c b/src/worker.c index c7b7143..a9474a7 100644 --- a/src/worker.c +++ b/src/worker.c @@ -93,7 +93,8 @@ jalv_worker_schedule(LV2_Worker_Schedule_Handle handle, uint32_t size, const void* data) { - JalvWorker* worker = (JalvWorker*)handle; + JalvWorker* worker = (JalvWorker*)handle; + LV2_Worker_Status st = LV2_WORKER_SUCCESS; if (!size) { return LV2_WORKER_ERR_UNKNOWN; @@ -107,12 +108,12 @@ jalv_worker_schedule(LV2_Worker_Schedule_Handle handle, } else { // Execute work immediately in this thread zix_sem_wait(worker->lock); - worker->iface->work( + st = worker->iface->work( worker->handle, jalv_worker_respond, worker, size, data); zix_sem_post(worker->lock); } - return LV2_WORKER_SUCCESS; + return st; } void |