aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Api/Controllers/ConfigurationController.cs
diff options
context:
space:
mode:
authorBaronGreenback <jimcartlidge@yahoo.co.uk>2021-05-08 12:22:09 +0100
committerBaronGreenback <jimcartlidge@yahoo.co.uk>2021-05-08 12:22:09 +0100
commit7185de970c2abef0255ca1ce5321c5d841ddefb8 (patch)
tree1f84882205d234a00057c9542c50bd1fab0cb4bf /Jellyfin.Api/Controllers/ConfigurationController.cs
parentdca02987106d0433ee4139fb380dd78d92921dae (diff)
parentd4a50be22c3c4b9bb0adfb957ee558287fd219d9 (diff)
Merge remote-tracking branch 'upstream/master' into UrlDecoding
Diffstat (limited to 'Jellyfin.Api/Controllers/ConfigurationController.cs')
-rw-r--r--Jellyfin.Api/Controllers/ConfigurationController.cs8
1 files changed, 7 insertions, 1 deletions
diff --git a/Jellyfin.Api/Controllers/ConfigurationController.cs b/Jellyfin.Api/Controllers/ConfigurationController.cs
index e1c9f69f6..b6309baab 100644
--- a/Jellyfin.Api/Controllers/ConfigurationController.cs
+++ b/Jellyfin.Api/Controllers/ConfigurationController.cs
@@ -1,3 +1,4 @@
+using System;
using System.ComponentModel.DataAnnotations;
using System.Net.Mime;
using System.Text.Json;
@@ -25,7 +26,7 @@ namespace Jellyfin.Api.Controllers
private readonly IServerConfigurationManager _configurationManager;
private readonly IMediaEncoder _mediaEncoder;
- private readonly JsonSerializerOptions _serializerOptions = JsonDefaults.GetOptions();
+ private readonly JsonSerializerOptions _serializerOptions = JsonDefaults.Options;
/// <summary>
/// Initializes a new instance of the <see cref="ConfigurationController"/> class.
@@ -94,6 +95,11 @@ namespace Jellyfin.Api.Controllers
{
var configurationType = _configurationManager.GetConfigurationType(key);
var configuration = await JsonSerializer.DeserializeAsync(Request.Body, configurationType, _serializerOptions).ConfigureAwait(false);
+ if (configuration == null)
+ {
+ throw new ArgumentException("Body doesn't contain a valid configuration");
+ }
+
_configurationManager.SaveConfiguration(key, configuration);
return NoContent();
}