diff --git a/src/htx.c b/src/htx.c index 940989c508..3cc1a34b05 100644 --- a/src/htx.c +++ b/src/htx.c @@ -939,9 +939,6 @@ size_t htx_add_data(struct htx *htx, const struct ist data) uint32_t sz, room; int32_t len = data.len; - if (htx->head == -1) - goto add_new_block; - /* Not enough space to store data */ if (len > htx_free_data_space(htx)) len = htx_free_data_space(htx); @@ -949,6 +946,9 @@ size_t htx_add_data(struct htx *htx, const struct ist data) if (!len) return 0; + if (htx->head == -1) + goto add_new_block; + /* get the tail and head block */ tailblk = htx_get_tail_blk(htx); if (tailblk == NULL)