UI: Fix crash radio list without items

Check items count before accessing first item,
or it will crash due to out-of-bound access.
This commit is contained in:
Yoshimasa Niwa
2023-06-26 11:58:30 -07:00
committed by Lain
parent 65e35bec7d
commit 9ab5271d69

View File

@@ -631,12 +631,15 @@ QWidget *OBSPropertiesView::AddList(obs_property_t *prop, bool &warning)
for (size_t idx = 0; idx < count; idx++)
AddRadioItem(buttonGroup, subLayout, prop, value, idx);
buttonGroup->setExclusive(true);
WidgetInfo *info =
new WidgetInfo(this, prop, buttonGroup->buttons()[0]);
children.emplace_back(info);
connect(buttonGroup, SIGNAL(buttonClicked(QAbstractButton *)),
info, SLOT(ControlChanged()));
if (count > 0) {
buttonGroup->setExclusive(true);
WidgetInfo *info = new WidgetInfo(
this, prop, buttonGroup->buttons()[0]);
children.emplace_back(info);
connect(buttonGroup,
SIGNAL(buttonClicked(QAbstractButton *)), info,
SLOT(ControlChanged()));
}
QWidget *widget = new QWidget();
widget->setLayout(subLayout);