function next(err) {
    // signal to exit route
    if (err && err === 'route') {
      return done();
    }

    // signal to exit router
    if (err && err === 'router') {
      return done(err)
    }

    // max sync stack
    if (++sync > 100) {
      return setImmediate(next, err)
    }

    var layer = stack[idx++]

    // end of layers
    if (!layer) {
      return done(err)
    }

    if (layer.method && layer.method !== method) {
      next(err)
    } else if (err) {
      layer.handle_error(err, req, res, next);
    } else {
      layer.handle_request(req, res, next);
    }

    sync = 0
  }'s avatar image

function next(err) { // signal to exit route if (err && err === 'route') { return done(); } // signal to exit router if (err && err === 'router') { return done(err) } // max sync stack if (++sync > 100) { return setImmediate(next, err) } var layer = stack[idx++] // end of layers if (!layer) { return done(err) } if (layer.method && layer.method !== method) { next(err) } else if (err) { layer.handle_error(err, req, res, next); } else { layer.handle_request(req, res, next); } sync = 0 }

0
Followers
0
Following
Activity Speed
Turbo
Targeting
Filters
Extra Options