If `err` is detected, we should call next(err) at least.