From 8e456626c740cf8d3f36d81acbdc97cbbd1e6e7d Mon Sep 17 00:00:00 2001 From: Richard Bradley Date: Thu, 15 Dec 2011 15:30:22 +0000 Subject: [PATCH] bug fix - swallowing all date parsing errors breaks the datepicker option "defaultDate" on relative values like "-18y" --- jquery-ui-timepicker-addon.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/jquery-ui-timepicker-addon.js b/jquery-ui-timepicker-addon.js index a639a3c..d670eca 100644 --- a/jquery-ui-timepicker-addon.js +++ b/jquery-ui-timepicker-addon.js @@ -1207,10 +1207,15 @@ $.datepicker.parseDate = function(format, value, settings) { try { date = this._base_parseDate(format, value, settings); } catch (err) { - // Hack! The error message ends with a colon, a space, and - // the "extra" characters. We rely on that instead of - // attempting to perfectly reproduce the parsing algorithm. - date = this._base_parseDate(format, value.substring(0,value.length-(err.length-err.indexOf(':')-2)), settings); + if (err.indexOf(":") >= 0) { + // Hack! The error message ends with a colon, a space, and + // the "extra" characters. We rely on that instead of + // attempting to perfectly reproduce the parsing algorithm. + date = this._base_parseDate(format, value.substring(0,value.length-(err.length-err.indexOf(':')-2)), settings); + } else { + // The underlying error was not related to the time + throw err; + } } return date; };