From: Josh Nelsson-Smith Date: Thu, 23 Apr 2020 20:50:28 +0000 (+1000) Subject: [bugfix] Uniform handling of day/date when 0 is used (#5098) X-Git-Tag: 2.25.0~79 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=37a7389905daaa03f867b95c180d48a4d48247d9;p=thirdparty%2Fmoment.git [bugfix] Uniform handling of day/date when 0 is used (#5098) --- diff --git a/src/lib/create/from-object.js b/src/lib/create/from-object.js index c0bfe9f8d..eb57d51d3 100644 --- a/src/lib/create/from-object.js +++ b/src/lib/create/from-object.js @@ -8,7 +8,9 @@ export function configFromObject(config) { } var i = normalizeObjectUnits(config._i); - config._a = map([i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond], function (obj) { + + var dayOrDate = i.day === undefined ? i.date : i.day; + config._a = map([i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond], function (obj) { return obj && parseInt(obj, 10); }); diff --git a/src/test/moment/create.js b/src/test/moment/create.js index da5e3c604..7f06dedfc 100644 --- a/src/test/moment/create.js +++ b/src/test/moment/create.js @@ -47,6 +47,13 @@ test('object', function (assert) { } }); +test('invalid date for object with zero value date or day keys', function (assert) { + assert.equal(moment({date: '0'}).format(), 'Invalid date'); + assert.equal(moment({date: 0}).format(), 'Invalid date'); + assert.equal(moment({day: '0'}).format(), 'Invalid date'); + assert.equal(moment({day: 0}).format(), 'Invalid date'); +}); + test('multi format array copying', function (assert) { var importantArray = ['MM/DD/YYYY', 'YYYY-MM-DD', 'MM-DD-YYYY']; moment('1999-02-13', importantArray);