Not long ago, T.J. complained in an article that he doesn't likes that in node.js sometimes callbacks are called more than once. i have a simple solution for this if you need it. also i can suggest that if you have callback problems you could use https://github.com/mattinsler/longjohn module to trace the problem. id did it several times.
cbguard: https://gist.github.com/shimondoodkin/a6762d8ab29ea497e245 // cbguard by Shimon Doodkin - license: public domain function cbguard(cb,printerr){ //kind of filter for callbacks. it prevents a callback to be called twice var cb1=cb; return function() { if(cb1) { var cb2=cb1; cb1=false; return cb2.apply(this,arguments); } else if(printerr)console.log(new Error('cb called twice').stack); } } // usage example: //function myfunction(cb) //{ // cb=cbguard(cb); // usage example // // or // // cb=cbguard(cb,true); // good when developing, it will protect and also tell you you have a problem, here a callback is called twice here. // // things that are based on event emitteres are usually have problems with multiple callbacks. -- Job board: http://jobs.nodejs.org/ New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/da7d1bfd-0841-40f4-81f6-8daf0cbaf333%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
