diff --git a/libobs/obs-canvas.c b/libobs/obs-canvas.c index 232afe2e7a4650..04aed2d4f6416b 100644 --- a/libobs/obs-canvas.c +++ b/libobs/obs-canvas.c @@ -43,17 +43,17 @@ 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]; 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_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)