bool CAddonDll::set_setting_string(void* kodiBase, const char* id, const char* value) { CAddonDll* addon = static_cast<CAddonDll*>(kodiBase); if (addon == nullptr || id == nullptr || value == nullptr) { CLog::Log(LOGERROR, "kodi::General::%s - invalid data (addon='%p', id='%p', value='%p')", __FUNCTION__, kodiBase, static_cast<const void*>(id), static_cast<const void*>(value)); return false; } if (addon->UpdateSettingInActiveDialog(id, value)) return true; if (!addon->UpdateSettingString(id, value)) { CLog::Log(LOGERROR, "kodi::General::%s - invalid setting type", __FUNCTION__); return false; } addon->SaveSettings(); return true; }