aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/Data/SqliteItemRepository.cs
diff options
context:
space:
mode:
authorNeil Burrows <neil.burrows@nvable.com>2019-12-13 10:29:38 +0000
committerNeil Burrows <neil.burrows@nvable.com>2019-12-13 10:29:38 +0000
commit554c967dd6a0e7e75e737912e869b7269cd72081 (patch)
tree71433497530c40133582c33720d212a073bcaa25 /Emby.Server.Implementations/Data/SqliteItemRepository.cs
parent96a5dda9ffe714e170e97bb93d72d68ed55791bb (diff)
Add Excluded Tags using SQLite parameters
Diffstat (limited to 'Emby.Server.Implementations/Data/SqliteItemRepository.cs')
-rw-r--r--Emby.Server.Implementations/Data/SqliteItemRepository.cs22
1 files changed, 19 insertions, 3 deletions
diff --git a/Emby.Server.Implementations/Data/SqliteItemRepository.cs b/Emby.Server.Implementations/Data/SqliteItemRepository.cs
index 69cfcb67b..3f96b43b3 100644
--- a/Emby.Server.Implementations/Data/SqliteItemRepository.cs
+++ b/Emby.Server.Implementations/Data/SqliteItemRepository.cs
@@ -4593,10 +4593,26 @@ namespace Emby.Server.Implementations.Data
if (query.ExcludeInheritedTags.Length > 0)
{
- var tagValues = query.ExcludeInheritedTags.Select(i => "'" + GetCleanValue(i) + "'");
- var tagValuesList = string.Join(",", tagValues);
+ var paramName = "@ExcludeInheritedTags";
- whereClauses.Add("((select CleanValue from itemvalues where ItemId=Guid and Type=6 and cleanvalue in (" + tagValuesList + ")) is null)");
+ if (statement == null)
+ {
+ List<string> tagParamList = new List<string>();
+
+ for (int index = 0; index < query.ExcludeInheritedTags.Length; index++)
+ {
+ tagParamList.Add(paramName + index);
+ }
+
+ whereClauses.Add("((select CleanValue from itemvalues where ItemId=Guid and Type=6 and cleanvalue in (" + string.Join(",", tagParamList) + ")) is null)");
+ }
+ else
+ {
+ for (int index = 0; index < query.ExcludeInheritedTags.Length; index++)
+ {
+ statement.TryBind(paramName + index, GetCleanValue(query.ExcludeInheritedTags[0]));
+ }
+ }
}
if (query.SeriesStatuses.Length > 0)