-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] crash report : this plugin should stop its obs_output before obs_shutdown #38
Comments
That's exactly what Beam is doing. Actually it is visible from your stack trace, because the code where OBS wants to destroy its output during OBS shutdown is where it crashes for you. I cannot reproduce that here, so I would assume it's a subsequent error caused by another issue happening earlier during your session. If you can provide the OBS log of a full session from start to exit I can have a look. Or what would also help would be a repro scenario that starts with an empty/fresh OBS installation with only Beam installed where the crash is eventually happening on exit. |
sorry I can't provide the full logs. for the above logs, we can see the obs_output_destroy for xObsStream is called after obs_shutdown. |
It's not called after obs_shutdown, it's called during obs_shutdown. It's normal that obs_shutdown is invoked and then calling various destroy operations on all objects that need to be free'd, that's the job of obs_shutdown you could say. Not sure whether I am interpreting your trace right, but it seems that Beam creates an output twice for you, as I see two obs_output_create calls. That shouldn't happen and might be the actual bug, it also would explain while it fails during the 2nd destroy operation - the 1st one already free'd some global resources, so the 2nd is trying to free resources that don't exist anymore. That also matches your crash trace where it runs into an error on FreeHeap(). But as I said, I would need a repro scenario to further investigate, as it doesn't occur for me here, especially without logs to get more info. Currently I don't have any idea how to trigger an output being created twice, maybe if something during creation fails in a way that leaves the output in a half-created state. |
@YorVeX yes, there are two output objects created. I will tell you if I reproduce it. thanks for your job~ |
crash callstack
in obs_shutdown, normally it should not appear that there is an obs_outout_t object not destroied here.
for output object in this plugin, it should register OBS's front event (
OBS_FRONTEND_EVENT_EXIT
), and stop output when event arrives.please confirm it, thanks ~
The text was updated successfully, but these errors were encountered: