Bug #1850

Too waste memory in mod_proxy.c

Added by ycheng over 5 years ago. Updated over 5 years ago.

Status:FixedStart date:2008-12-18
Priority:NormalDue date:
Assignee:-% Done:

100%

Category:mod_proxy
Target version:1.4.21
Missing in 1.5.x:

Description

See:
http://redmine.lighttpd.net/repositories/entry/lighttpd/branches/lighttpd-1.4.x/src/mod_proxy.c
Function:
static int proxy_demux_response(server *srv, handler_ctx *hctx)
Line:
lien 655: buffer_prepare_append(hctx->response, hctx->response->used + b);

Too waste memory.
int buffer_prepare_append(buffer *b, size_t size) expands the content of the buffer, not set. The argument size is a "incremental" quantity, not the "absolute" quantity. See the srouce.
So line 655 should be changed to:
buffer_prepare_append(hctx->response, b);
I have had a test, and it works OK.

Associated revisions

Revision 2365
Added by stbuehler over 5 years ago

Optimized buffer usage in mod_proxy (fixes #1850)

History

#1 Updated by icy over 5 years ago

  • Target version set to 1.4.21
  • Pending changed from No to Yes

Looked over it and is valid, good find.
Thanks for looking over the source ycheng!

#2 Updated by stbuehler over 5 years ago

  • Status changed from New to Fixed
  • % Done changed from 0 to 100

Applied in changeset r2365.

Also available in: Atom