FiniteSingularity / obs-quick-access-utility

A quick access utility dock for OBS.
GNU General Public License v2.0
62 stars 4 forks source link

[BUG] - Unclean shutdown #73

Closed itroy187 closed 3 months ago

itroy187 commented 3 months ago

Describe the bug With the plugin v1.0.0 installed, I get a unclean shutdown (no crash though) everytime when quitting OBS. As soon as I remove the plugin, OBS shuts down without errors.

0.0.1-alpha6 does not have this issue

To Reproduce Steps to reproduce the behavior:

  1. Start OBS with plugin installed
  2. Exit OBS
  3. Start OBS again
  4. Log says [Safe Mode] Unclean shutdown detected!

Expected behavior Clean shutdown with the plugin installed

Environment

GPU

Log: 2024-08-28 10-41-28.txt

FiniteSingularity commented 3 months ago

Hi @itroy187 ,

Thank you for the bug report. I do see that there are 3 sources not getting cleared on shutdown: NDI Guest Cam, Audio Visualizer VLC Intro, and Veadotube. (I also apologize for the log spam- apparently I forgot to pull some debugging logs for release).

My gut tells me it is likely the dynamic dock that is causing this. Could you please start OBS, delete your dynamic dock completely (go to Tools -> Quick Access Utility, then delete your dynamic dock), close OBS, then re-run, and see if you get a clean shutdown from there?

FiniteSingularity commented 3 months ago

Ok, after digging through your log file, I think I might see what is going on:

It looks like there are three sources that can not be created properly (I suspect because the plugin used for those sources is no longer installed?). The three sources are:

While they are not created, OBS still adds an entry for them in the source list. The search dock/quicksearch grabs all sources in the list, and then later (on shutdown) tries to free them. I suspect this is what is causing the issue. Later this morning I will try to replicate this.

itroy187 commented 3 months ago

You're right. These plugins were no longer installed. I've removed the sources and the issue is gone. THanks a lot! And of course thanks for the awesome plugin!

FiniteSingularity commented 3 months ago

Glad to hear that fixed things! I do need to be able to handle edge-cases like this, and so I'll be working on a fix that doesn't load sources which aren't valid (due to missing plugins or other issues). I'll leave this issue open to track fixing it.

FiniteSingularity commented 3 months ago

Fixed with #74