1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| var wrappy = require('wrappy')
| module.exports = wrappy(dezalgo)
|
| var asap = require('asap')
|
| function dezalgo (cb) {
| var sync = true
| asap(function () {
| sync = false
| })
|
| return function zalgoSafe() {
| var args = arguments
| var me = this
| if (sync)
| asap(function() {
| cb.apply(me, args)
| })
| else
| cb.apply(me, args)
| }
| }
|
|