mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-01-03 18:52:04 +00:00
BUG/MEDIUM: compression: Use the right buffer pointers to compress input data
A bug was introduced when the buffers API was refactored. It was when wrapping input data were compressed. the pointer b_peek(in, 0) was used instead of "b_orig(in)". b_peek(in, 0) is in fact the same as b_head(in).
This commit is contained in:
parent
2a7d6502bf
commit
9666720c83
@ -1074,10 +1074,10 @@ http_compression_buffer_add_data(struct comp_state *st, struct buffer *in,
|
||||
block2 = data_process_len - block1;
|
||||
|
||||
/* compressors return < 0 upon error or the amount of bytes read */
|
||||
consumed_data = st->comp_algo->add_data(st->comp_ctx, b_head(in) + in_out, block1, out);
|
||||
consumed_data = st->comp_algo->add_data(st->comp_ctx, b_peek(in, in_out), block1, out);
|
||||
if (consumed_data != block1 || !block2)
|
||||
goto end;
|
||||
consumed_data = st->comp_algo->add_data(st->comp_ctx, b_peek(in, 0), block2, out);
|
||||
consumed_data = st->comp_algo->add_data(st->comp_ctx, b_orig(in), block2, out);
|
||||
if (consumed_data < 0)
|
||||
goto end;
|
||||
consumed_data += block1;
|
||||
|
Loading…
Reference in New Issue
Block a user