mirror of
https://github.com/nginx/nginx.git
synced 2024-12-02 20:09:01 +08:00
SPDY: the SETTINGS frame should be allocated from sc->pool.
There is no reason to allocate it from connection pool that more like just a bug especially since ngx_http_spdy_settings_frame_handler() already uses sc->pool to free a chain.
This commit is contained in:
parent
b2b43ca50f
commit
82a1ff31f9
@ -1598,7 +1598,6 @@ ngx_http_spdy_send_settings(ngx_http_spdy_connection_t *sc)
|
|||||||
{
|
{
|
||||||
u_char *p;
|
u_char *p;
|
||||||
ngx_buf_t *buf;
|
ngx_buf_t *buf;
|
||||||
ngx_pool_t *pool;
|
|
||||||
ngx_chain_t *cl;
|
ngx_chain_t *cl;
|
||||||
ngx_http_spdy_srv_conf_t *sscf;
|
ngx_http_spdy_srv_conf_t *sscf;
|
||||||
ngx_http_spdy_out_frame_t *frame;
|
ngx_http_spdy_out_frame_t *frame;
|
||||||
@ -1606,21 +1605,19 @@ ngx_http_spdy_send_settings(ngx_http_spdy_connection_t *sc)
|
|||||||
ngx_log_debug0(NGX_LOG_DEBUG_HTTP, sc->connection->log, 0,
|
ngx_log_debug0(NGX_LOG_DEBUG_HTTP, sc->connection->log, 0,
|
||||||
"spdy create SETTINGS frame");
|
"spdy create SETTINGS frame");
|
||||||
|
|
||||||
pool = sc->connection->pool;
|
frame = ngx_palloc(sc->pool, sizeof(ngx_http_spdy_out_frame_t));
|
||||||
|
|
||||||
frame = ngx_palloc(pool, sizeof(ngx_http_spdy_out_frame_t));
|
|
||||||
if (frame == NULL) {
|
if (frame == NULL) {
|
||||||
return NGX_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
cl = ngx_alloc_chain_link(pool);
|
cl = ngx_alloc_chain_link(sc->pool);
|
||||||
if (cl == NULL) {
|
if (cl == NULL) {
|
||||||
return NGX_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
buf = ngx_create_temp_buf(pool, NGX_SPDY_FRAME_HEADER_SIZE
|
buf = ngx_create_temp_buf(sc->pool, NGX_SPDY_FRAME_HEADER_SIZE
|
||||||
+ NGX_SPDY_SETTINGS_NUM_SIZE
|
+ NGX_SPDY_SETTINGS_NUM_SIZE
|
||||||
+ NGX_SPDY_SETTINGS_PAIR_SIZE);
|
+ NGX_SPDY_SETTINGS_PAIR_SIZE);
|
||||||
if (buf == NULL) {
|
if (buf == NULL) {
|
||||||
return NGX_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user