aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-07-02 01:08:05 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-07-02 01:08:05 -0400
commit67ed8070dcb31eb41be47fefa5ee29bd081e6c47 (patch)
treeb970323190e8268fceec24773bf8f54dd562abfd /MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
parent91ce8f443713ed8d9c694ef554e183ac954728b2 (diff)
add sharing function
Diffstat (limited to 'MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs22
1 files changed, 20 insertions, 2 deletions
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
index ff689ac7f..9778e3c32 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
@@ -1,3 +1,4 @@
+using System.Runtime.Serialization;
using MediaBrowser.Common.Configuration;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.LiveTv;
@@ -413,7 +414,15 @@ namespace MediaBrowser.Server.Implementations.Persistence
using (var stream = reader.GetMemoryStream(1))
{
- return _jsonSerializer.DeserializeFromStream(stream, type) as BaseItem;
+ try
+ {
+ return _jsonSerializer.DeserializeFromStream(stream, type) as BaseItem;
+ }
+ catch (SerializationException ex)
+ {
+ _logger.ErrorException("Error deserializing item", ex);
+ return null;
+ }
}
}
@@ -696,7 +705,11 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
while (reader.Read())
{
- list.Add(GetItem(reader));
+ var item = GetItem(reader);
+ if (item != null)
+ {
+ list.Add(item);
+ }
}
if (reader.NextResult() && reader.Read())
@@ -986,6 +999,11 @@ namespace MediaBrowser.Server.Implementations.Persistence
_deleteChildrenCommand.Transaction = transaction;
_deleteChildrenCommand.ExecuteNonQuery();
+ // Delete people
+ _deletePeopleCommand.GetParameter(0).Value = id;
+ _deletePeopleCommand.Transaction = transaction;
+ _deletePeopleCommand.ExecuteNonQuery();
+
// Delete the item
_deleteItemCommand.GetParameter(0).Value = id;
_deleteItemCommand.Transaction = transaction;