FT_DECLARE(ftdm_status_t) ftdm_span_send_signal(ftdm_span_t *span, ftdm_sigmsg_t *sigmsg)
{
ftdm_channel_t *fchan = NULL;
+ ftdm_status_t status = FTDM_SUCCESS;
if (sigmsg->channel) {
fchan = sigmsg->channel;
ftdm_channel_lock(fchan);
if (ftdm_test_flag(span, FTDM_SPAN_USE_SIGNALS_QUEUE)) {
ftdm_span_queue_signal(span, sigmsg);
} else {
- ftdm_span_trigger_signal(span, sigmsg);
+ status = ftdm_span_trigger_signal(span, sigmsg);
}
done:
ftdm_channel_unlock(fchan);
}
- return FTDM_SUCCESS;
+ return status;
}
static void *ftdm_cpu_monitor_run(ftdm_thread_t *me, void *obj)