libobs: Always call stop callback

Rather than have the back-end try to determine whether the output can or
cannot stop, allow the stop callback to continue in the plugin either
way and let the plugin itself make that determination.

This fixes a bug where the back-end wouldn't have data active while
connecting, therefore the stop callback wouldn't be called, and once
connected it wouldn't know that it was supposed to stop.  In other words
trying to call obs_output_stop on an output that was in a state of
connecting would do nothing and the output would never stop.
This commit is contained in:
jp9000 2017-05-20 12:27:02 -07:00
parent 5d25d800ad
commit 87f14a1254

View File

@ -346,10 +346,10 @@ void obs_output_actual_stop(obs_output_t *output, bool force, uint64_t ts)
obs_output_end_data_capture(output);
os_event_signal(output->stopping_event);
} else {
call_stop = data_active(output);
call_stop = true;
}
} else {
call_stop = data_active(output);
call_stop = true;
}
if (output->context.data && call_stop) {