Question about ngx_chain_writer

Eran Kornblau eran.kornblau at kaltura.com
Thu Jun 6 13:06:38 UTC 2019


Hi all,

Looking at ngx_chain_writer, there's something that looks a bit off to me, this line seems redundant -
https://github.com/nginx/nginx/blob/master/src/core/ngx_output_chain.c#L728

The first loop in the function adds the input chain (in) to the end of ctx->out.
The second loop in the function calculates the total size of ctx->out, so it will add the size of the 'in' buffers again.
I verified in gdb that size is indeed x2 the size of the chain.

This isn't causing any problem since size is only compared to zero, but seems a bit confusing...
It may have been better to leave the 'size += ngx_buf_size(in->buf);' but reverse the order of the 2 loops,
so that the input buffers will be validated only once.

Does this make sense or did I get something wrong?

Thanks

Eran

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-devel/attachments/20190606/bab8c8ea/attachment.html>


More information about the nginx-devel mailing list