Fixed: Saving indexer, download client, etc settings

(cherry picked from commit 804a5921b3b620e2407d5d6a7fd69fb1fd9b0cbf)
This commit is contained in:
Mark McDowall 2023-11-19 11:13:11 -08:00 committed by Bogdan
parent 422a05628e
commit 34027932c5

View file

@ -91,7 +91,9 @@ namespace Lidarr.Api.V1
var providerDefinition = GetDefinition(providerResource, existingDefinition, true, !forceSave, false);
// Comparing via JSON string to eliminate the need for every provider implementation to implement equality checks.
var hasDefinitionChanged = STJson.ToJson(existingDefinition) != STJson.ToJson(providerDefinition);
// Compare settings separately because they are not serialized with the definition.
var hasDefinitionChanged = STJson.ToJson(existingDefinition) != STJson.ToJson(providerDefinition) ||
STJson.ToJson(existingDefinition.Settings) != STJson.ToJson(providerDefinition.Settings);
// Only test existing definitions if it is enabled and forceSave isn't set or the definition has changed.
if (providerDefinition.Enable && (!forceSave || hasDefinitionChanged))