Browse Source

Backport pull request #15435 from jellyfin/release-10.11.z

Fix search terms using diacritics

Original-merge: 63a3e552978010e905ea9b4e258c0c2e153ddfec

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
theguymadmax 3 days ago
parent
commit
de9e653b73
1 changed files with 6 additions and 5 deletions
  1. 6 5
      Jellyfin.Server.Implementations/Item/BaseItemRepository.cs

+ 6 - 5
Jellyfin.Server.Implementations/Item/BaseItemRepository.cs

@@ -1704,15 +1704,16 @@ public sealed class BaseItemRepository
 
 
         if (!string.IsNullOrEmpty(filter.SearchTerm))
         if (!string.IsNullOrEmpty(filter.SearchTerm))
         {
         {
-            var searchTerm = filter.SearchTerm.ToLower();
-            if (SearchWildcardTerms.Any(f => searchTerm.Contains(f)))
+            var cleanedSearchTerm = GetCleanValue(filter.SearchTerm);
+            var originalSearchTerm = filter.SearchTerm.ToLower();
+            if (SearchWildcardTerms.Any(f => cleanedSearchTerm.Contains(f)))
             {
             {
-                searchTerm = $"%{searchTerm.Trim('%')}%";
-                baseQuery = baseQuery.Where(e => EF.Functions.Like(e.CleanName!.ToLower(), searchTerm) || (e.OriginalTitle != null && EF.Functions.Like(e.OriginalTitle.ToLower(), searchTerm)));
+                cleanedSearchTerm = $"%{cleanedSearchTerm.Trim('%')}%";
+                baseQuery = baseQuery.Where(e => EF.Functions.Like(e.CleanName!, cleanedSearchTerm) || (e.OriginalTitle != null && EF.Functions.Like(e.OriginalTitle.ToLower(), originalSearchTerm)));
             }
             }
             else
             else
             {
             {
-                baseQuery = baseQuery.Where(e => e.CleanName!.ToLower().Contains(searchTerm) || (e.OriginalTitle != null && e.OriginalTitle.ToLower().Contains(searchTerm)));
+                baseQuery = baseQuery.Where(e => e.CleanName!.Contains(cleanedSearchTerm) || (e.OriginalTitle != null && e.OriginalTitle.ToLower().Contains(originalSearchTerm)));
             }
             }
         }
         }