From 4991f3b359646650e09221617a430e71cb362efd Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Wed, 24 Oct 2018 21:05:25 -0400 Subject: [PATCH] support non-native promise implementations --- .../src/server/middleware/get_server_route_handler.ts | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/templates/src/server/middleware/get_server_route_handler.ts b/templates/src/server/middleware/get_server_route_handler.ts index 8270777..1e2f3db 100644 --- a/templates/src/server/middleware/get_server_route_handler.ts +++ b/templates/src/server/middleware/get_server_route_handler.ts @@ -2,7 +2,7 @@ import { IGNORE } from '../placeholders'; import { Req, Res, ServerRoute } from './types'; export function get_server_route_handler(routes: ServerRoute[]) { - function handle_route(route: ServerRoute, req: Req, res: Res, next: () => void) { + async function handle_route(route: ServerRoute, req: Req, res: Res, next: () => void) { req.params = route.params(route.pattern.exec(req.path)); const method = req.method.toLowerCase(); @@ -53,12 +53,7 @@ export function get_server_route_handler(routes: ServerRoute[]) { }; try { - const result = handle_method(req, res, handle_next); - - // catch failures in async functions - if (Promise.resolve(result) === result) { - result.catch(handle_next); - } + await handle_method(req, res, handle_next); } catch (err) { handle_next(err); }