Qt: sanitize ampersands

This commit is contained in:
CozmoP 2019-04-15 22:45:03 +02:00
parent f9ce822a7b
commit aa98a80fa6

View File

@ -55,9 +55,14 @@ inline void addSublabelAndWhatsThis(QWidget *widget, rarch_setting_t *setting)
widget->setWhatsThis(tmp); widget->setWhatsThis(tmp);
} }
static QString sanitizeAmpersand(QString input)
{
return input.replace("&", "&&");
}
inline QString formLabel(rarch_setting_t *setting) inline QString formLabel(rarch_setting_t *setting)
{ {
return QString(setting->short_description) + ":"; return QString(sanitizeAmpersand(setting->short_description)) + ":";
} }
FormLayout::FormLayout(QWidget *parent) : FormLayout::FormLayout(QWidget *parent) :
@ -271,7 +276,7 @@ void SettingsGroup::addBindButton(rarch_setting_t *setting)
} }
CheckBox::CheckBox(rarch_setting_t *setting, QWidget *parent) : CheckBox::CheckBox(rarch_setting_t *setting, QWidget *parent) :
QCheckBox(setting->short_description, parent) QCheckBox(sanitizeAmpersand(setting->short_description), parent)
,m_setting(setting) ,m_setting(setting)
,m_value(setting->value.target.boolean) ,m_value(setting->value.target.boolean)
{ {