diff options
| author | theguymadmax <theguymadmax@proton.me> | 2025-09-06 13:38:00 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-09-06 11:38:00 -0600 |
| commit | e043f93a72e75b159b987869cd590c77d55a034e (patch) | |
| tree | f1275ab7e8e9aa2252952a3af598d54df251f0af | |
| parent | 6ac2d707cba11d7986606bb8f2e00c03c7dc3258 (diff) | |
Preserve 3D format on metadata refresh (#14742)
| -rw-r--r-- | MediaBrowser.Providers/Manager/MetadataService.cs | 2 | ||||
| -rw-r--r-- | tests/Jellyfin.Providers.Tests/Manager/MetadataServiceTests.cs | 12 |
2 files changed, 12 insertions, 2 deletions
diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs index 0f2188aa8..1d83263c5 100644 --- a/MediaBrowser.Providers/Manager/MetadataService.cs +++ b/MediaBrowser.Providers/Manager/MetadataService.cs @@ -1279,7 +1279,7 @@ namespace MediaBrowser.Providers.Manager { if (source is Video sourceCast && target is Video targetCast) { - if (replaceData || !targetCast.Video3DFormat.HasValue) + if (sourceCast.Video3DFormat.HasValue && (replaceData || !targetCast.Video3DFormat.HasValue)) { targetCast.Video3DFormat = sourceCast.Video3DFormat; } diff --git a/tests/Jellyfin.Providers.Tests/Manager/MetadataServiceTests.cs b/tests/Jellyfin.Providers.Tests/Manager/MetadataServiceTests.cs index b5585f4fd..cdebdadfb 100644 --- a/tests/Jellyfin.Providers.Tests/Manager/MetadataServiceTests.cs +++ b/tests/Jellyfin.Providers.Tests/Manager/MetadataServiceTests.cs @@ -157,7 +157,17 @@ namespace Jellyfin.Providers.Tests.Manager Assert.True(TestMergeBaseItemData<Movie, MovieInfo>(propName, oldValue, newValue, null, true, out _)); Assert.True(TestMergeBaseItemData<Movie, MovieInfo>(propName, null, newValue, null, false, out _)); - Assert.True(TestMergeBaseItemData<Movie, MovieInfo>(propName, oldValue, null, null, true, out _)); + // Video3DFormat - null values do NOT replace existing data + if (string.Equals(propName, "Video3DFormat", StringComparison.Ordinal)) + { + Assert.False( + TestMergeBaseItemData<Movie, MovieInfo>(propName, oldValue, null, null, true, out _)); + } + else + { + Assert.True( + TestMergeBaseItemData<Movie, MovieInfo>(propName, oldValue, null, null, true, out _)); + } } [Fact] |
