"Execution Interrupted during event processing" - interrupts clock apps
Affected hardware version
Bangle 2
Your firmware version
2v24
The bug
Describe the bug
The currently active app appears to be frozen, I suspect its code has run and been interrupted before it's been able to install a setTimeout()
I see Execution Interrupted during event processing. in the IDE when connecting.
Expected behavior
The app isn't interrupted and continues the render / perform its tasks
Steps to reproduce
- Run (for example) slopeclock++
- Wait some time
- Observe the clock freezes
- IDE presents the above message
Installed apps
Can't establish a connection from the app loader - execution is interrupted before it manages to fetch the app list. With the IDE also connected I see:
[Execution Interrupted
>[Execution Interrupted
>[Execution Interrupted
>[Execution Interrupted
>[Execution Interrupted
>
Tagging @gfwilliams too - have you seen anything like this before?
Maybe try running E.getErrorFlags in the IDE? It might be it's failing because the Bangle is out of memory, but it only tends to report the error to the console once - so if you weren't connected when it was reported you might miss it unless you check?
Thanks - I've installed this boot code, stashing here in case anyone else stumbles on this:
E.on("errorFlag", function(errorFlags) {
const f = require("Storage").open("errorflags.log", "a");
f.write(Date.now() + " " + JSON.stringify(errorFlags) + "\n");
console.log("errorflags.boot.js: wrote to errorflags.log");
});
Will see what I end up with
Looks like OOMs, only occurs when I have GadgetBridge connected (Android), investigating further
Just FYI new firmwares (cutting edge or 2v27) should have much better out of memory reporting now - they will print a stack trace to the console where the error actually happened.
So if you can reproduce this now it should be much easier to track down.
To actually log that stack trace you'll need to enable logging to a file in the Bangle's Settings though
Thanks - I haven't been able to reproduce this in a good while, I suspect it might've been todo with my HRM hardware taking a knock, but I'll be ready if it does reappear