diff options
Diffstat (limited to 'MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationStore.cs')
| -rw-r--r-- | MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationStore.cs | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationStore.cs b/MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationStore.cs index 2f158157e..19c1de9f7 100644 --- a/MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationStore.cs +++ b/MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationStore.cs @@ -18,10 +18,16 @@ namespace MediaBrowser.MediaEncoding.Configuration public void Validate(object oldConfig, object newConfig) { - var newPath = ((EncodingOptions)newConfig).TranscodingTempPath; + var oldEncodingOptions = (EncodingOptions)oldConfig; + var newEncodingOptions = (EncodingOptions)newConfig; + + ArgumentNullException.ThrowIfNull(oldEncodingOptions, nameof(oldConfig)); + ArgumentNullException.ThrowIfNull(newEncodingOptions, nameof(newConfig)); + + var newPath = newEncodingOptions.TranscodingTempPath; if (!string.IsNullOrWhiteSpace(newPath) - && !string.Equals(((EncodingOptions)oldConfig).TranscodingTempPath, newPath, StringComparison.Ordinal)) + && !string.Equals(oldEncodingOptions.TranscodingTempPath, newPath, StringComparison.Ordinal)) { // Validate if (!Directory.Exists(newPath)) @@ -33,6 +39,12 @@ namespace MediaBrowser.MediaEncoding.Configuration newPath)); } } + + if (!string.IsNullOrWhiteSpace(newEncodingOptions.EncoderAppPath) + && !string.Equals(oldEncodingOptions.EncoderAppPath, newEncodingOptions.EncoderAppPath, StringComparison.Ordinal)) + { + throw new InvalidOperationException("Unable to update encoder app path."); + } } } } |
