mirror of
https://github.com/obsproject/obs-studio.git
synced 2026-04-10 17:50:28 -04:00
UI: Fix possible crash due to UI property access from graphics thread
Selection state can change by main thread while UI thread (which calls DrawSpacingHelpers) tries to evaluate the amount of selected items. Get amount of selected items by enumerating over the scene data instead (which stays within the graphics thread).
This commit is contained in:
@@ -2453,7 +2453,12 @@ void OBSBasicPreview::DrawSpacingHelpers()
|
||||
|
||||
OBSBasic *main = OBSBasic::Get();
|
||||
|
||||
if (main->ui->sources->selectionModel()->selectedIndexes().count() > 1)
|
||||
vec2 s;
|
||||
SceneFindBoxData data(s, s);
|
||||
|
||||
obs_scene_enum_items(main->GetCurrentScene(), FindSelected, &data);
|
||||
|
||||
if (data.sceneItems.size() > 1)
|
||||
return;
|
||||
|
||||
OBSSceneItem item = main->GetCurrentSceneItem();
|
||||
|
||||
Reference in New Issue
Block a user