aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-11-08 16:22:02 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-11-08 16:22:02 -0500
commit04f165283bb383a9bb7b339444c693a559a57be9 (patch)
tree676643802275e4fcc87d922da98a709c593c9b3c
parent09f44715bb72e3d1f514f429d2e40acad1086550 (diff)
try to avoid album year of zero
-rw-r--r--MediaBrowser.Controller/Drawing/IImageProcessor.cs2
-rw-r--r--MediaBrowser.Providers/Music/LastfmHelper.cs19
-rw-r--r--MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs14
3 files changed, 25 insertions, 10 deletions
diff --git a/MediaBrowser.Controller/Drawing/IImageProcessor.cs b/MediaBrowser.Controller/Drawing/IImageProcessor.cs
index e4c68a8ab..1a8583489 100644
--- a/MediaBrowser.Controller/Drawing/IImageProcessor.cs
+++ b/MediaBrowser.Controller/Drawing/IImageProcessor.cs
@@ -68,7 +68,7 @@ namespace MediaBrowser.Controller.Drawing
/// <param name="imageEnhancers">The image enhancers.</param>
/// <returns>Guid.</returns>
Guid GetImageCacheTag(BaseItem item, ImageType imageType, string originalImagePath, DateTime dateModified,
- IEnumerable<IImageEnhancer> imageEnhancers);
+ List<IImageEnhancer> imageEnhancers);
/// <summary>
/// Processes the image.
diff --git a/MediaBrowser.Providers/Music/LastfmHelper.cs b/MediaBrowser.Providers/Music/LastfmHelper.cs
index f529fd44a..d58aa714b 100644
--- a/MediaBrowser.Providers/Music/LastfmHelper.cs
+++ b/MediaBrowser.Providers/Music/LastfmHelper.cs
@@ -25,8 +25,13 @@ namespace MediaBrowser.Providers.Music
}
}
- artist.PremiereDate = yearFormed > 0 ? new DateTime(yearFormed, 1, 1, 0, 0, 0, DateTimeKind.Utc) : (DateTime?)null;
- artist.ProductionYear = yearFormed;
+ if (yearFormed > 0)
+ {
+ artist.PremiereDate = new DateTime(yearFormed, 1, 1, 0, 0, 0, DateTimeKind.Utc);
+
+ artist.ProductionYear = yearFormed;
+ }
+
if (data.tags != null && !artist.LockedFields.Contains(MetadataFields.Tags))
{
AddTags(artist, data.tags);
@@ -102,10 +107,14 @@ namespace MediaBrowser.Providers.Music
DateTime release;
- if (DateTime.TryParse(data.releasedate, out release) && release.Year != 1901)
+ if (DateTime.TryParse(data.releasedate, out release))
{
- item.PremiereDate = release;
- item.ProductionYear = release.Year;
+ // Lastfm sends back null as sometimes 1901, other times 0
+ if (release.Year > 1901)
+ {
+ item.PremiereDate = release;
+ item.ProductionYear = release.Year;
+ }
}
if (data.toptags != null && !item.LockedFields.Contains(MetadataFields.Tags))
diff --git a/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs b/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
index 78dcf6fd0..fd980abc8 100644
--- a/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
+++ b/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
@@ -589,7 +589,7 @@ namespace MediaBrowser.Server.Implementations.Drawing
var supportedEnhancers = GetSupportedEnhancers(item, imageType);
- return GetImageCacheTag(item, imageType, imagePath, dateModified, supportedEnhancers);
+ return GetImageCacheTag(item, imageType, imagePath, dateModified, supportedEnhancers.ToList());
}
/// <summary>
@@ -602,7 +602,7 @@ namespace MediaBrowser.Server.Implementations.Drawing
/// <param name="imageEnhancers">The image enhancers.</param>
/// <returns>Guid.</returns>
/// <exception cref="System.ArgumentNullException">item</exception>
- public Guid GetImageCacheTag(BaseItem item, ImageType imageType, string originalImagePath, DateTime dateModified, IEnumerable<IImageEnhancer> imageEnhancers)
+ public Guid GetImageCacheTag(BaseItem item, ImageType imageType, string originalImagePath, DateTime dateModified, List<IImageEnhancer> imageEnhancers)
{
if (item == null)
{
@@ -619,6 +619,12 @@ namespace MediaBrowser.Server.Implementations.Drawing
throw new ArgumentNullException("originalImagePath");
}
+ // Optimization
+ if (imageEnhancers.Count == 0)
+ {
+ return (originalImagePath + dateModified.Ticks).GetMD5();
+ }
+
// Cache name is created with supported enhancers combined with the last config change so we pick up new config changes
var cacheKeys = imageEnhancers.Select(i => i.GetConfigurationCacheKey(item, imageType)).ToList();
cacheKeys.Add(originalImagePath + dateModified.Ticks);
@@ -879,7 +885,7 @@ namespace MediaBrowser.Server.Implementations.Drawing
{
try
{
- return i.Supports(item as BaseItem, imageType);
+ return i.Supports(item, imageType);
}
catch (Exception ex)
{
@@ -888,7 +894,7 @@ namespace MediaBrowser.Server.Implementations.Drawing
return false;
}
- }).ToList();
+ });
}
public void Dispose()