mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-02-21 13:16:57 +00:00
MINOR: httpclient/lua: return an error when it can't generate the request
Add a check during the httpclient request generation which yield an lua error when the generation didn't work. The most common case is the lack of space in the buffer, it can because of too much headers or a too big body.
This commit is contained in:
parent
dc2cc9008b
commit
6137a9ee20
10
src/hlua.c
10
src/hlua.c
@ -7209,8 +7209,7 @@ __LJMP static int hlua_httpclient_send(lua_State *L, enum http_meth_t meth)
|
||||
hlua_hc->hc->ops.res_end = hlua_httpclient_res_cb;
|
||||
|
||||
|
||||
httpclient_req_gen(hlua_hc->hc, hlua_hc->hc->req.url, meth, hdrs, ist(body_str));
|
||||
httpclient_start(hlua_hc->hc);
|
||||
ret = httpclient_req_gen(hlua_hc->hc, hlua_hc->hc->req.url, meth, hdrs, ist(body_str));
|
||||
|
||||
/* free the temporary headers array */
|
||||
hdrs_i = hdrs;
|
||||
@ -7222,6 +7221,13 @@ __LJMP static int hlua_httpclient_send(lua_State *L, enum http_meth_t meth)
|
||||
ha_free(&hdrs);
|
||||
|
||||
|
||||
if (ret != ERR_NONE) {
|
||||
WILL_LJMP(luaL_error(L, "Can't generate the HTTP request"));
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
httpclient_start(hlua_hc->hc);
|
||||
|
||||
/* we return a "res" object */
|
||||
lua_newtable(L);
|
||||
|
Loading…
Reference in New Issue
Block a user