Mercurial > hg > nginx
comparison src/http/modules/ngx_http_geo_module.c @ 2457:1aff348d9aa8
fix segfault when geo range replaces starting part of another range
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 19 Jan 2009 16:42:14 +0000 |
parents | 95f078e7d743 |
children | 2e91aecb9e57 |
comparison
equal
deleted
inserted
replaced
2456:d4b69804cffa | 2457:1aff348d9aa8 |
---|---|
634 return NGX_CONF_ERROR; | 634 return NGX_CONF_ERROR; |
635 } | 635 } |
636 | 636 |
637 range = a->elts; | 637 range = a->elts; |
638 | 638 |
639 ngx_memcpy(&range[i + 2], &range[i + 1], | 639 ngx_memcpy(&range[i + 1], &range[i], |
640 (a->nelts - 2 - i) * sizeof(ngx_http_geo_range_t)); | 640 (a->nelts - 1 - i) * sizeof(ngx_http_geo_range_t)); |
641 | 641 |
642 range[i + 1].start = (u_short) (e + 1); | 642 range[i + 1].start = (u_short) (e + 1); |
643 | 643 |
644 range[i].start = (u_short) s; | 644 range[i].start = (u_short) s; |
645 range[i].end = (u_short) e; | 645 range[i].end = (u_short) e; |