Skip to content

Commit e6aea01

Browse files
committed
added extra debug info for double-call errors
1 parent 3e2b79b commit e6aea01

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

espruino.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ var Espruino;
3939
* debugMode - called with true or false when debug mode is entered or left
4040
* editorHover - called with { node : htmlNode, showTooltip : function(htmlNode) } when something is hovered over
4141
* notification - called with { mdg, type:"success","error"/"warning"/"info" }
42-
* webcam - called when webcam is visible or not { visible : true , stream: MediaStream }
42+
* webcam - called when webcam is visible or not { visible : true , stream: MediaStream }
4343
**/
4444
var processors = {};
4545

@@ -106,10 +106,12 @@ var Espruino;
106106
var cbCalled = false;
107107
var cb = function(inData) {
108108
if (cbCalled) {
109-
throw new Error("Internal error in "+eventType+" processor. Callback is called TWICE.");
110-
return;
109+
console.error("Callback: ", cb);
110+
console.error("PREVIOUS CALL: ", cbCalled);
111+
console.error("CURRENT CALL: ", (new Error()).stack);
112+
throw new Error(`Internal error in '${eventType}' processor. Callback is called TWICE.`);
111113
}
112-
cbCalled = true;
114+
cbCalled = (new Error()).stack;
113115
if (n < p.length) {
114116
cbCalled = false;
115117
p[n++](inData, cb);

0 commit comments

Comments
 (0)