Yep never mind, I have found the gap. I was forgetting to pass a callback somewhere in the chain.
Thijs On Mon, Mar 26, 2012 at 5:04 PM, Thijs Koerselman <[email protected] > wrote: > Oops I forgot the attach the callback in the setTimeout. This isn't a good > example of what I was trying to show then. I'll have to look into it again. > > function callNonexistant(callback){ > setTimeout(errorfun.nonexitant, 1000, callback); > } > > That way the exception is caught. > > Thijs > > > On Mon, Mar 26, 2012 at 4:49 PM, Thijs Koerselman < > [email protected]> wrote: > >> I am standardizing all my callbacks to do proper exception handling, but >> the only type of exceptions I can't seem to catch in a good way are the >> ones illustrated below. When I make a call to a module function which >> doesn't exist the exception is not caught anywhere even though I have the >> uncaughtExeption handler. >> >> Can anyone explain my what is the best way to catch this, and why this >> exception isn't reported to me? The only solution I found is to put a >> try/catch phrase around the module function call, but this is not a proper >> solution, because you make these kind of errors by accident. I don't want >> to put a try/catch clause around every module function I call just to make >> sure i don't have a typo. >> >> These kind of errors are really annoying me since I don't get any >> notification so often I am searching in the wrong places. >> >> Errorfun is just an empty module in this example. >> >> Thijs >> >> >> var assert = require('assert'); >> var errorfun = require('./errortestmodule'); >> var step = require('step'); >> >> process.on('uncaughtException', function(err) { >> console.log("___________ UNCAUGHT _____________\n"); >> console.log(err.message); >> console.log(err.stack); >> }); >> >> process.on('exit', function () { >> console.log('About to exit.'); >> }); >> >> function callNonexistant(callback){ >> setTimeout(errorfun.nonexitant, 1000); >> } >> >> function doSomethingAsync(callback){ >> step( >> function(){ >> callNonexistant(this); >> }, >> function(err){ >> if(err) return callback(err); >> callback(null); >> } >> ); >> } >> >> function myCallback(err, result){ >> if(err) throw err; >> console.log("Finished and happy"); >> } >> >> >> doSomethingAsync(myCallback); >> > > -- Job Board: http://jobs.nodejs.org/ Posting guidelines: 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 post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
