comparison src/core/ngx_array.h @ 50:72eb30262aac NGINX_0_1_25

nginx 0.1.25 *) Bugfix: nginx did run on Linux parisc. *) Feature: nginx now does not start under FreeBSD if the sysctl kern.ipc.somaxconn value is too big. *) Bugfix: if a request was internally redirected by the ngx_http_index_module module to the ngx_http_proxy_module or ngx_http_fastcgi_module modules, then the index file was not closed after request completion. *) Feature: the "proxy_pass" can be used in location with regular expression. *) Feature: the ngx_http_rewrite_filter_module module supports the condition like "if ($HTTP_USER_AGENT ~ MSIE)". *) Bugfix: nginx started too slow if the large number of addresses and text values were used in the "geo" directive. *) Change: a variable name must be declared as "$name" in the "geo" directive. The previous variant without "$" is still supported, but will be removed soon. *) Feature: the "%{VARIABLE}v" logging parameter. *) Feature: the "set $name value" directive. *) Bugfix: gcc 4.0 compatibility. *) Feature: the --with-openssl-opt=OPTIONS autoconfiguration directive.
author Igor Sysoev <http://sysoev.ru>
date Sat, 19 Mar 2005 00:00:00 +0300
parents aab2ea7c0458
children b55cbf18157e
comparison
equal deleted inserted replaced
49:93dabbc9efb9 50:72eb30262aac
25 void ngx_array_destroy(ngx_array_t *a); 25 void ngx_array_destroy(ngx_array_t *a);
26 void *ngx_array_push(ngx_array_t *a); 26 void *ngx_array_push(ngx_array_t *a);
27 void *ngx_array_push_n(ngx_array_t *a, ngx_uint_t n); 27 void *ngx_array_push_n(ngx_array_t *a, ngx_uint_t n);
28 28
29 29
30 static ngx_inline ngx_int_t ngx_array_init(ngx_array_t *array, ngx_pool_t *pool, 30 static ngx_inline ngx_int_t
31 ngx_uint_t n, size_t size) 31 ngx_array_init(ngx_array_t *array, ngx_pool_t *pool, ngx_uint_t n, size_t size)
32 { 32 {
33 if (!(array->elts = ngx_palloc(pool, n * size))) { 33 array->elts = ngx_palloc(pool, n * size);
34 if (array->elts == NULL) {
34 return NGX_ERROR; 35 return NGX_ERROR;
35 } 36 }
36 37
37 array->nelts = 0; 38 array->nelts = 0;
38 array->size = size; 39 array->size = size;
41 42
42 return NGX_OK; 43 return NGX_OK;
43 } 44 }
44 45
45 46
46 /* STUB */
47 #define ngx_init_array(a, p, n, s, rc) \
48 ngx_test_null(a.elts, ngx_palloc(p, n * s), rc); \
49 a.nelts = 0; a.size = s; a.nalloc = n; a.pool = p;
50
51 #define ngx_create_array ngx_array_create
52 #define ngx_push_array ngx_array_push
53 /**/
54
55
56 #endif /* _NGX_ARRAY_H_INCLUDED_ */ 47 #endif /* _NGX_ARRAY_H_INCLUDED_ */