Skip to content

Commit ebbe420

Browse files
committed
sched 0.31: Ensure we reschedule alarms after setTimeZone has been called (fix espruino#3791)
1 parent df2bae6 commit ebbe420

File tree

3 files changed

+6
-1
lines changed

3 files changed

+6
-1
lines changed

apps/sched/ChangeLog

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,4 @@
3131
0.28: Added an icon for disabled events
3232
0.29: Improve clkinfo startup time by 10ms
3333
0.30: Fix possible bug in toggling an alarm to on, from clkinfo
34+
0.31: Ensure we reschedule alarms after setTimeZone has been called (fix #3791)

apps/sched/boot.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
clearTimeout(Bangle.SCHED);
55
delete Bangle.SCHED;
66
}
7+
delete E.setTimeZone; // delete any modified setTimeZone we added below
78
var alarms = require('Storage').readJSON('sched.json',1)||[];
89
var time = new Date();
910
var currentTime = (time.getHours()*3600000)+(time.getMinutes()*60000)+(time.getSeconds()*1000);
@@ -25,6 +26,9 @@
2526
normally.
2627
If active[0].js is defined, just run that code as-is and not alarm.js */
2728
Bangle.SCHED = setTimeout(active[0].js||'load("sched.js")',t);
29+
// Override setTimeZone to ensure we reschedule alarms after it has been called - fix #3791
30+
var tz = E.setTimeZone;
31+
E.setTimeZone = function(z) { tz(z);eval(require("Storage").read("sched.boot.js")); };
2832
} else { // check for new alarms at midnight (so day of week works)
2933
Bangle.SCHED = setTimeout('eval(require("Storage").read("sched.boot.js"))', 86400000 - currentTime);
3034
}

apps/sched/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"id": "sched",
33
"name": "Scheduler",
4-
"version": "0.30",
4+
"version": "0.31",
55
"description": "Scheduling library for alarms and timers",
66
"icon": "app.png",
77
"type": "scheduler",

0 commit comments

Comments
 (0)