aboutsummaryrefslogtreecommitdiff
path: root/web/callback.js
diff options
context:
space:
mode:
authorSebastiano Tronto <sebastiano@tronto.net>2025-05-23 17:06:02 +0200
committerSebastiano Tronto <sebastiano@tronto.net>2025-05-23 17:06:02 +0200
commitecb04c6b7fbf5d06c2fdce5128e83575cac2bd21 (patch)
tree3946a99938c10b61f7822c715771c3529400cebc /web/callback.js
parentc6a77f30f64be73a5e55e06336975f2ecfbb2324 (diff)
downloadnissy-core-ecb04c6b7fbf5d06c2fdce5128e83575cac2bd21.tar.gz
nissy-core-ecb04c6b7fbf5d06c2fdce5128e83575cac2bd21.zip
Web version (work in progress)
Diffstat (limited to 'web/callback.js')
-rw-r--r--web/callback.js32
1 files changed, 28 insertions, 4 deletions
diff --git a/web/callback.js b/web/callback.js
index 1b3028e..178b8e9 100644
--- a/web/callback.js
+++ b/web/callback.js
@@ -2,20 +2,44 @@ addToLibrary({
2 2
3cbfl: [], 3cbfl: [],
4 4
5validateCallbackId__deps: [ 'cbfl' ],
6validateCallbackId: function(i) {
7 if (i < 0) {
8 console.log("--- WARNING ---");
9 console.log("Trying to access callback function of invalid id " + i);
10 console.log("--- WARNING ---");
11 return false;
12 }
13
14 if (i >= _cbfl.length) {
15 console.log("--- WARNING ---");
16 console.log("Trying to access callback function " + i + ", but only "
17 + _cbfl.length + " have been registered. This may be caused by a "
18 + "call outside of the main thread.");
19 console.log("--- WARNING ---");
20 return false;
21 }
22
23 return true;
24},
25
5addCallbackFunction__deps: [ 'cbfl' ], 26addCallbackFunction__deps: [ 'cbfl' ],
6addCallbackFunction: function(f) { 27addCallbackFunction: function(f) {
7 _cbfl.push(f) 28 _cbfl.push(f)
8 return _cbfl.length - 1 29 return _cbfl.length - 1
9}, 30},
10 31
11callFunction__deps: [ 'cbfl' ], 32callFunction__deps: [ 'cbfl', 'validateCallbackId' ],
12callFunction: function(id, arg) { 33callFunction: function(id, arg) {
13 _cbfl[id](UTF8ToString(arg)) 34 if (_validateCallbackId(id))
35 _cbfl[id](UTF8ToString(arg));
14}, 36},
15 37
16callFunctionInt__deps: [ 'cbfl' ], 38callFunctionInt__deps: [ 'cbfl', 'validateCallbackId' ],
17callFunctionInt: function(id) { 39callFunctionInt: function(id) {
18 return _cbfl[id]() 40 if (_validateCallbackId(id))
41 return _cbfl[id]();
42 return 0;
19}, 43},
20 44
21}); 45});

Generated with cgit - Back to sebastiano.tronto.net