Mercurial > hg > nginx
comparison src/core/ngx_cycle.c @ 4848:a0f1d53546d4 stable-1.2
Merge of r4778, r4782, r4783, r4824, r4830, r4834: minor fixes.
*) Reorder checks in ngx_shared_memory_add() for more consistent
error messages.
*) Added "const" to ngx_memcpy() with NGX_MEMCPY_LIMIT defined. This
fixes warning produced during compilation of the ngx_http_geoip_module
due to const qualifier being discarded.
*) Fixed possible use of old cached times if runtime went backwards.
If ngx_time_sigsafe_update() updated only ngx_cached_err_log_time, and
then clock was adjusted backwards, the cached_time[slot].sec might
accidentally match current seconds on next ngx_time_update() call,
resulting in various cached times not being updated.
Fix is to clear the cached_time[slot].sec to explicitly mark cached times
are stale and need updating.
*) Radix tree preallocation fix. The preallocation size was calculated
incorrectly and was always 8 due to sizeof(ngx_radix_tree_t) accidentally
used instead of sizeof(ngx_radix_node_t).
*) Fixed overflow if ngx_slab_alloc() is called with very big "size"
argument.
*) Write filter: replaced unneeded loop with one to free chains.
Noted by Gabor Lekeny.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 24 Sep 2012 18:34:04 +0000 |
parents | d620f497c50f |
children | 2b129bb067b5 db9ce6fc9482 |
comparison
equal
deleted
inserted
replaced
4847:0275f587e00b | 4848:a0f1d53546d4 |
---|---|
1283 != 0) | 1283 != 0) |
1284 { | 1284 { |
1285 continue; | 1285 continue; |
1286 } | 1286 } |
1287 | 1287 |
1288 if (tag != shm_zone[i].tag) { | |
1289 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, | |
1290 "the shared memory zone \"%V\" is " | |
1291 "already declared for a different use", | |
1292 &shm_zone[i].shm.name); | |
1293 return NULL; | |
1294 } | |
1295 | |
1288 if (size && size != shm_zone[i].shm.size) { | 1296 if (size && size != shm_zone[i].shm.size) { |
1289 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, | 1297 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, |
1290 "the size %uz of shared memory zone \"%V\" " | 1298 "the size %uz of shared memory zone \"%V\" " |
1291 "conflicts with already declared size %uz", | 1299 "conflicts with already declared size %uz", |
1292 size, &shm_zone[i].shm.name, shm_zone[i].shm.size); | 1300 size, &shm_zone[i].shm.name, shm_zone[i].shm.size); |
1293 return NULL; | |
1294 } | |
1295 | |
1296 if (tag != shm_zone[i].tag) { | |
1297 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, | |
1298 "the shared memory zone \"%V\" is " | |
1299 "already declared for a different use", | |
1300 &shm_zone[i].shm.name); | |
1301 return NULL; | 1301 return NULL; |
1302 } | 1302 } |
1303 | 1303 |
1304 return &shm_zone[i]; | 1304 return &shm_zone[i]; |
1305 } | 1305 } |