diff --git a/src/hlua.c b/src/hlua.c index cefaf3801..37f786687 100644 --- a/src/hlua.c +++ b/src/hlua.c @@ -3911,7 +3911,7 @@ static int hlua_applet_http_new(lua_State *L, struct appctx *ctx) htx = htxbuf(&s->req.buf); blk = htx_get_first_blk(htx); - BUG_ON(htx_get_blk_type(blk) != HTX_BLK_REQ_SL); + BUG_ON(!blk || htx_get_blk_type(blk) != HTX_BLK_REQ_SL); sl = htx_get_blk_ptr(htx, blk); /* Stores the request method. */ diff --git a/src/mux_h2.c b/src/mux_h2.c index 49e0a2fac..24543458b 100644 --- a/src/mux_h2.c +++ b/src/mux_h2.c @@ -4629,7 +4629,7 @@ static size_t h2s_frt_make_resp_headers(struct h2s *h2s, struct htx *htx) /* get the start line, we do have one */ blk = htx_get_head_blk(htx); - BUG_ON(htx_get_blk_type(blk) != HTX_BLK_RES_SL); + BUG_ON(!blk || htx_get_blk_type(blk) != HTX_BLK_RES_SL); ALREADY_CHECKED(blk); sl = htx_get_blk_ptr(htx, blk); h2s->status = sl->info.res.status; @@ -4864,7 +4864,7 @@ static size_t h2s_bck_make_req_headers(struct h2s *h2s, struct htx *htx) /* get the start line, we do have one */ blk = htx_get_head_blk(htx); - BUG_ON(htx_get_blk_type(blk) != HTX_BLK_REQ_SL); + BUG_ON(!blk || htx_get_blk_type(blk) != HTX_BLK_REQ_SL); ALREADY_CHECKED(blk); sl = htx_get_blk_ptr(htx, blk); meth = htx_sl_req_meth(sl); diff --git a/src/stats.c b/src/stats.c index 02057c592..5954fe67f 100644 --- a/src/stats.c +++ b/src/stats.c @@ -284,7 +284,7 @@ static const char *stats_scope_ptr(struct appctx *appctx, struct stream_interfac struct ist uri; blk = htx_get_head_blk(htx); - BUG_ON(htx_get_blk_type(blk) != HTX_BLK_REQ_SL); + BUG_ON(!blk || htx_get_blk_type(blk) != HTX_BLK_REQ_SL); ALREADY_CHECKED(blk); uri = htx_sl_req_uri(htx_get_blk_ptr(htx, blk)); return uri.ptr + appctx->ctx.stats.scope_str;