Skip to content

Commit 8000976

Browse files
committed
Fix for JavaScript's broken Date API.
1 parent ce502a4 commit 8000976

4 files changed

Lines changed: 9 additions & 5 deletions

File tree

d3.v2.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6918,8 +6918,8 @@
69186918
d3.time.hours = d3.time.hour.range;
69196919
d3.time.hours.utc = d3.time.hour.utc.range;
69206920
d3.time.day = d3_time_interval(function(date) {
6921-
var day = new d3_time(0, date.getMonth(), date.getDate());
6922-
day.setFullYear(date.getFullYear());
6921+
var day = new d3_time(1970, 0);
6922+
day.setFullYear(date.getFullYear(), date.getMonth(), date.getDate());
69236923
return day;
69246924
}, function(date, offset) {
69256925
date.setDate(date.getDate() + offset);

d3.v2.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/time/day.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
d3.time.day = d3_time_interval(function(date) {
2-
var day = new d3_time(0, date.getMonth(), date.getDate());
3-
day.setFullYear(date.getFullYear());
2+
var day = new d3_time(1970, 0);
3+
day.setFullYear(date.getFullYear(), date.getMonth(), date.getDate());
44
return day;
55
}, function(date, offset) {
66
date.setDate(date.getDate() + offset);

test/time/day-test.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,10 @@ suite.addBatch({
6161
assert.deepEqual(ceil(utc(2011, 10, 06, 08)), local(2011, 10, 07));
6262
assert.deepEqual(ceil(utc(2011, 10, 06, 09)), local(2011, 10, 07));
6363
assert.deepEqual(ceil(utc(2011, 10, 06, 10)), local(2011, 10, 07));
64+
},
65+
"handles midnight for leap years": function(ceil) {
66+
assert.deepEqual(ceil(utc(2012, 02, 01, 00)), local(2012, 02, 01));
67+
assert.deepEqual(ceil(utc(2012, 02, 01, 00)), local(2012, 02, 01));
6468
}
6569
},
6670
"offset": {

0 commit comments

Comments
 (0)