Why not just done(error) here?  I didn't actually know you could pass a function to done()...