Browse Source

SqliteItemRepository: Parse ChannelId directly from utf-8 data

Bond_009 4 năm trước cách đây
mục cha
commit
34313ef216

+ 9 - 1
Emby.Server.Implementations/Data/SqliteItemRepository.cs

@@ -1,6 +1,7 @@
 #pragma warning disable CS1591
 #pragma warning disable CS1591
 
 
 using System;
 using System;
+using System.Buffers.Text;
 using System.Collections.Generic;
 using System.Collections.Generic;
 using System.Globalization;
 using System.Globalization;
 using System.IO;
 using System.IO;
@@ -1311,7 +1312,14 @@ namespace Emby.Server.Implementations.Data
 
 
             if (!reader.IsDBNull(index))
             if (!reader.IsDBNull(index))
             {
             {
-                item.ChannelId = new Guid(reader.GetString(index));
+                if (!Utf8Parser.TryParse(reader[index].ToBlob(), out Guid value, out _, standardFormat: 'N'))
+                {
+                    var str = reader.GetString(index);
+                    Logger.LogWarning("{ChannelId} isn't in the expected format", str);
+                    value = new Guid(str);
+                }
+
+                item.ChannelId = value;
             }
             }
 
 
             index++;
             index++;