aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Dlna
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Dlna')
-rw-r--r--MediaBrowser.Dlna/Didl/DidlBuilder.cs28
1 files changed, 20 insertions, 8 deletions
diff --git a/MediaBrowser.Dlna/Didl/DidlBuilder.cs b/MediaBrowser.Dlna/Didl/DidlBuilder.cs
index ba42a06e25..89d00eb32b 100644
--- a/MediaBrowser.Dlna/Didl/DidlBuilder.cs
+++ b/MediaBrowser.Dlna/Didl/DidlBuilder.cs
@@ -93,10 +93,10 @@ namespace MediaBrowser.Dlna.Didl
}
else
{
- var parent = item.DisplayParent;
- if (parent != null)
+ var parent = item.DisplayParentId;
+ if (parent.HasValue)
{
- element.SetAttribute("parentID", GetClientId(parent, null));
+ element.SetAttribute("parentID", GetClientId(parent.Value, null));
}
}
@@ -499,14 +499,21 @@ namespace MediaBrowser.Dlna.Didl
{
container.SetAttribute("id", clientId);
- var parent = context ?? folder.DisplayParent;
- if (parent == null)
+ if (context != null)
{
- container.SetAttribute("parentID", "0");
+ container.SetAttribute("parentID", GetClientId(context, null));
}
else
{
- container.SetAttribute("parentID", GetClientId(parent, null));
+ var parent = folder.DisplayParentId;
+ if (!parent.HasValue)
+ {
+ container.SetAttribute("parentID", "0");
+ }
+ else
+ {
+ container.SetAttribute("parentID", GetClientId(parent.Value, null));
+ }
}
}
@@ -1059,7 +1066,12 @@ namespace MediaBrowser.Dlna.Didl
public static string GetClientId(BaseItem item, StubType? stubType)
{
- var id = item.Id.ToString("N");
+ return GetClientId(item.Id, stubType);
+ }
+
+ public static string GetClientId(Guid idValue, StubType? stubType)
+ {
+ var id = idValue.ToString("N");
if (stubType.HasValue)
{