OBS only populates the extraBrowserDocks list if `cef` is valid. By saving docks regardless of whether `cef` is valid, this can result in the user's custom docks being cleared unexpectedly.
@@ -4768,7 +4768,9 @@ void OBSBasic::closeEvent(QCloseEvent *event)
saveState().toBase64().constData());
#ifdef BROWSER_AVAILABLE
- SaveExtraBrowserDocks();
+ if (cef)
+ SaveExtraBrowserDocks();
+
ClearExtraBrowserDocks();
#endif