config: Allow more sensible input options for enabling animations. (#5659)

* Add check for on/off and true/false.

* Cleanup feature and comment it out.

* Use already created helper function for this.

* Fix comparing int to char* ptr
This commit is contained in:
Gabriel Ford 2024-04-20 11:26:48 +00:00 committed by GitHub
parent 10caa03ce5
commit 5c97b96278
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1786,12 +1786,15 @@ std::optional<std::string> CConfigManager::handleAnimation(const std::string& co
PANIM->second.overridden = true;
PANIM->second.pValues = &PANIM->second;
// on/off
PANIM->second.internalEnabled = ARGS[1] == "1";
// This helper casts strings like "1", "true", "off", "yes"... to int.
int64_t enabledInt = configStringToInt(ARGS[1]) == 1;
if (ARGS[1] != "0" && ARGS[1] != "1")
// Checking that the int is 1 or 0 because the helper can return integers out of range.
if (enabledInt != 0 && enabledInt != 1)
return "invalid animation on/off state";
PANIM->second.internalEnabled = configStringToInt(ARGS[1]) == 1;
if (PANIM->second.internalEnabled) {
// speed
if (isNumber(ARGS[2], true)) {