aboutsummaryrefslogtreecommitdiff
path: root/Emby.XmlTv
diff options
context:
space:
mode:
authorBond_009 <bond.009@outlook.com>2019-01-25 21:52:10 +0100
committerBond_009 <bond.009@outlook.com>2019-01-25 21:52:10 +0100
commit8af256f9c2eaffee31211c5487a28b5cbaba3af0 (patch)
treebce4827e87ed1037d27610ac0db210f9105bff77 /Emby.XmlTv
parente0315b569591b71938829a8f35ac264399ef66bd (diff)
Fix always null expressions
Diffstat (limited to 'Emby.XmlTv')
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs69
1 files changed, 33 insertions, 36 deletions
diff --git a/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs b/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs
index 52e58ed8d..52ec7a135 100644
--- a/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs
@@ -1005,7 +1005,7 @@ namespace Emby.XmlTv.Classes
}
}
- public static Regex _regDateWithOffset = new Regex(@"^(?<dateDigits>[0-9]{4,14})(\s(?<dateOffset>[+-]*[0-9]{1,4}))?$");
+ public const string _regDateWithOffset = @"^(?<dateDigits>[0-9]{4,14})(\s(?<dateOffset>[+-]*[0-9]{1,4}))?$";
public DateTimeOffset? ParseDate(string dateValue)
{
@@ -1018,50 +1018,47 @@ namespace Emby.XmlTv.Classes
'200007281733 BST', '200209', '19880523083000 +0300'. (BST == +0100.)
*/
- DateTimeOffset? result = null;
-
- if (!string.IsNullOrEmpty(dateValue))
+ if (string.IsNullOrEmpty(dateValue))
{
- var completeDate = "20000101000000";
- var dateComponent = string.Empty;
- var dateOffset = "+00:00";
+ return null;
+ }
- var match = _regDateWithOffset.Match(dateValue);
- if (match.Success)
+ var completeDate = "20000101000000";
+ var dateComponent = string.Empty;
+ var dateOffset = "+00:00";
+ var match = Regex.Match(dateValue, _regDateWithOffset);
+ if (match.Success)
+ {
+ dateComponent = match.Groups["dateDigits"].Value;
+ if (!string.IsNullOrEmpty(match.Groups["dateOffset"].Value))
{
- dateComponent = match.Groups["dateDigits"].Value;
- if (!string.IsNullOrEmpty(match.Groups["dateOffset"].Value))
+ dateOffset = match.Groups["dateOffset"].Value; // Add in the colon to ease parsing later
+ if (dateOffset.Length == 5)
{
- dateOffset = match.Groups["dateOffset"].Value; // Add in the colon to ease parsing later
- if (dateOffset.Length == 5)
- {
- dateOffset = dateOffset.Insert(3, ":"); // Add in the colon to ease parsing later
- }
- else
- {
- dateOffset = "+00:00";
- }
+ dateOffset = dateOffset.Insert(3, ":"); // Add in the colon to ease parsing later
+ }
+ else
+ {
+ dateOffset = "+00:00";
}
}
+ }
- // Pad out the date component part to 14 characaters so 2016061509 becomes 20160615090000
- if (dateComponent.Length < 14)
- {
- dateComponent = dateComponent + completeDate.Substring(dateComponent.Length, completeDate.Length - dateComponent.Length);
- }
+ // Pad out the date component part to 14 characaters so 2016061509 becomes 20160615090000
+ if (dateComponent.Length < 14)
+ {
+ dateComponent = dateComponent + completeDate.Substring(dateComponent.Length, completeDate.Length - dateComponent.Length);
+ }
- var standardDate = string.Format("{0} {1}", dateComponent, dateOffset);
- if (DateTimeOffset.TryParseExact(standardDate, "yyyyMMddHHmmss zzz", CultureInfo.CurrentCulture, DateTimeStyles.None, out var parsedDateTime))
- {
- return parsedDateTime.ToUniversalTime();
- }
- else
- {
- //Logger.LogWarning("Unable to parse the date {0} from standardised form {1}", dateValue, standardDate);
- }
+ var standardDate = string.Format("{0} {1}", dateComponent, dateOffset);
+ if (DateTimeOffset.TryParseExact(standardDate, "yyyyMMddHHmmss zzz", CultureInfo.CurrentCulture, DateTimeStyles.None, out DateTimeOffset parsedDateTime))
+ {
+ return parsedDateTime.ToUniversalTime();
}
- return result;
+ // Logger.LogWarning("Unable to parse the date {0} from standardised form {1}", dateValue, standardDate);
+
+ return null;
}
public string StandardiseDate(string value)
@@ -1070,7 +1067,7 @@ namespace Emby.XmlTv.Classes
var dateComponent = string.Empty;
var dateOffset = "+0000";
- var match = _regDateWithOffset.Match(value);
+ var match = Regex.Match(value, _regDateWithOffset);
if (match.Success)
{
dateComponent = match.Groups["dateDigits"].Value;