Fix #159 - Streamline TimeSpan parsing logic, get rid of the buggy code

pull/175/head
Oleg Nenashev 2016-12-29 11:02:24 +01:00
parent fca428d351
commit 9399544ef5
1 changed files with 6 additions and 14 deletions

View File

@ -126,16 +126,8 @@ namespace winsw
private TimeSpan SingleTimeSpanElement(XmlNode parent, string tagName, TimeSpan defaultValue)
{
var e = parent.SelectSingleNode(tagName);
if (e == null)
{
return defaultValue;
}
else
{
return ParseTimeSpan(e.InnerText);
}
var value = SingleElement(tagName, true);
return (value != null) ? ParseTimeSpan(value) : defaultValue;
}
private TimeSpan ParseTimeSpan(string v)
@ -505,7 +497,7 @@ namespace winsw
{
get
{
return SingleTimeSpanElement(dom.FirstChild, "waithint", Defaults.WaitHint);
return SingleTimeSpanElement(dom, "waithint", Defaults.WaitHint);
}
}
@ -519,7 +511,7 @@ namespace winsw
{
get
{
return SingleTimeSpanElement(dom.FirstChild, "sleeptime", Defaults.SleepTime);
return SingleTimeSpanElement(dom, "sleeptime", Defaults.SleepTime);
}
}
@ -615,7 +607,7 @@ namespace winsw
{
get
{
return SingleTimeSpanElement(dom.FirstChild, "resetfailure", Defaults.ResetFailureAfter);
return SingleTimeSpanElement(dom, "resetfailure", Defaults.ResetFailureAfter);
}
}
@ -703,7 +695,7 @@ namespace winsw
{
get
{
return SingleTimeSpanElement(dom.FirstChild, "stoptimeout", Defaults.StopTimeout);
return SingleTimeSpanElement(dom, "stoptimeout", Defaults.StopTimeout);
}
}