MINOR: compression: init before deleting headers

Init the compression algorithm before modifying the response headers. So
if the compression init fail, the headers won't be modified.
This commit is contained in:
William Lallemand 2012-11-07 15:00:23 +01:00 committed by Willy Tarreau
parent 552df67100
commit 4c49fae985

View File

@ -2087,6 +2087,10 @@ int select_compression_response_header(struct session *s, struct buffer *res)
ctx.idx = 0;
/* initialize compression */
if (s->comp_algo->init(&s->comp_ctx, 1) < 0)
goto fail;
/* remove Content-Length header */
if ((msg->flags & HTTP_MSGF_CNT_LEN) && http_find_header2("Content-Length", 14, res->p, &txn->hdr_idx, &ctx))
http_remove_header2(msg, &txn->hdr_idx, &ctx);
@ -2110,10 +2114,6 @@ int select_compression_response_header(struct session *s, struct buffer *res)
http_header_add_tail2(&txn->rsp, &txn->hdr_idx, trash.str, trash.len);
}
/* initialize compression */
if (s->comp_algo->init(&s->comp_ctx, 1) < 0)
goto fail;
return 1;
fail: