From 6a42d88ca7d389c3a43e10333bd201ba3894eafb Mon Sep 17 00:00:00 2001 From: gxalpha Date: Wed, 2 Aug 2023 17:27:16 +0200 Subject: [PATCH] UI: Don't call obs_source_get_output_flags on a NULL source --- UI/window-basic-main.cpp | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp index 205c74b1d..c7f0b8a8e 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp @@ -3393,16 +3393,20 @@ void OBSBasic::SourceToolBarActionsSetEnabled() void OBSBasic::UpdateTransformShortcuts() { + bool hasVideo = false; + OBSSource source = obs_sceneitem_get_source(GetCurrentSceneItem()); - uint32_t flags = obs_source_get_output_flags(source); - bool audioOnly = (flags & OBS_SOURCE_VIDEO) == 0; - ui->actionEditTransform->setEnabled(!audioOnly); - ui->actionCopyTransform->setEnabled(!audioOnly); - ui->actionPasteTransform->setEnabled(audioOnly ? false - : hasCopiedTransform); + if (source) { + uint32_t flags = obs_source_get_output_flags(source); + hasVideo = (flags & OBS_SOURCE_VIDEO) != 0; + } - ui->actionResetTransform->setEnabled(!audioOnly); + ui->actionEditTransform->setEnabled(hasVideo); + ui->actionCopyTransform->setEnabled(hasVideo); + ui->actionPasteTransform->setEnabled(hasVideo ? hasCopiedTransform + : false); + ui->actionResetTransform->setEnabled(hasVideo); } void OBSBasic::UpdateContextBar(bool force)