# HG changeset patch # User Matthew Wild # Date 1596888851 -3600 # Node ID 1f41f38a92f7007bbdacdc2db4bc7b3c488effbe # Parent 05fefde930368c8be77a24882c06a4cb752c6a85# Parent 5176d9f727f6366af3df75ca65d7fdaddf72ed35 Merge 0.11->trunk diff -r 05fefde93036 -r 1f41f38a92f7 net/http.lua --- a/net/http.lua Sat Jul 25 17:26:11 2020 +0200 +++ b/net/http.lua Sat Aug 08 13:14:11 2020 +0100 @@ -58,6 +58,16 @@ end end +local function cancel_request(request, reason) + if request.callback then + request.callback(reason or "cancelled", 0, request); + request.callback = nil; + end + if request.conn then + destroy_request(request); + end +end + local function request_reader(request, data, err) if not request.parser then local function error_cb(reason) @@ -107,6 +117,7 @@ end req.reader = request_reader; req.state = "status"; + req.cancel = cancel_request; requests[req.conn] = req; @@ -318,4 +329,5 @@ urldecode = util_http.urldecode; formencode = util_http.formencode; formdecode = util_http.formdecode; + destroy_request = destroy_request; };