From 47d324a16983eb71fc20a1a3fd2ee80b511ca4f0 Mon Sep 17 00:00:00 2001 From: tt2468 Date: Fri, 19 Jun 2026 23:50:54 -0700 Subject: [PATCH 1/2] libobs: Change canvas signal param name to `signal_canvas` Just a nitpick, as `signal_source` is a copy/paste from obs-source --- libobs/obs-canvas.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libobs/obs-canvas.c b/libobs/obs-canvas.c index 232afe2e7a4650..962d878ed787a2 100644 --- a/libobs/obs-canvas.c +++ b/libobs/obs-canvas.c @@ -43,7 +43,7 @@ static const char *canvas_signals[] = { NULL, }; -static inline void canvas_dosignal(obs_canvas_t *canvas, const char *signal_obs, const char *signal_source) +static inline void canvas_dosignal(obs_canvas_t *canvas, const char *signal_obs, const char *signal_canvas) { struct calldata data; uint8_t stack[128]; @@ -52,8 +52,8 @@ static inline void canvas_dosignal(obs_canvas_t *canvas, const char *signal_obs, calldata_set_ptr(&data, "canvas", canvas); if (signal_obs) signal_handler_signal(obs->signals, signal_obs, &data); - if (signal_source) - signal_handler_signal(canvas->context.signals, signal_source, &data); + if (signal_canvas) + signal_handler_signal(canvas->context.signals, signal_canvas, &data); } static inline void canvas_dosignal_source(const char *signal, obs_canvas_t *canvas, obs_source_t *source) From 0610e26b4e380b15d66ce60d34861b01735d80a2 Mon Sep 17 00:00:00 2001 From: tt2468 Date: Fri, 19 Jun 2026 23:56:27 -0700 Subject: [PATCH 2/2] libobs: Only emit core signal handlers for public canvases Amends behavior to match other notable object types like sources --- libobs/obs-canvas.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libobs/obs-canvas.c b/libobs/obs-canvas.c index 962d878ed787a2..04aed2d4f6416b 100644 --- a/libobs/obs-canvas.c +++ b/libobs/obs-canvas.c @@ -50,7 +50,7 @@ static inline void canvas_dosignal(obs_canvas_t *canvas, const char *signal_obs, calldata_init_fixed(&data, stack, sizeof(stack)); calldata_set_ptr(&data, "canvas", canvas); - if (signal_obs) + if (signal_obs && !canvas->context.private) signal_handler_signal(obs->signals, signal_obs, &data); if (signal_canvas) signal_handler_signal(canvas->context.signals, signal_canvas, &data);