comparison src/http/modules/ngx_http_flv_module.c @ 2086:22d36702c654

allow several values in query string
author Igor Sysoev <igor@sysoev.ru>
date Fri, 04 Jul 2008 12:59:53 +0000
parents 75a8d34459c5
children c8039b26a949
comparison
equal deleted inserted replaced
2085:505af86ac9cb 2086:22d36702c654
58 58
59 59
60 static ngx_int_t 60 static ngx_int_t
61 ngx_http_flv_handler(ngx_http_request_t *r) 61 ngx_http_flv_handler(ngx_http_request_t *r)
62 { 62 {
63 u_char *p, *last; 63 u_char *p, *n, *last;
64 off_t start, len; 64 off_t start, len;
65 size_t root; 65 size_t root;
66 ngx_int_t rc; 66 ngx_int_t rc;
67 ngx_uint_t level, i; 67 ngx_uint_t level, i;
68 ngx_str_t path; 68 ngx_str_t path;
167 p = (u_char *) ngx_strnstr(r->args.data, "start=", r->args.len); 167 p = (u_char *) ngx_strnstr(r->args.data, "start=", r->args.len);
168 168
169 if (p) { 169 if (p) {
170 p += 6; 170 p += 6;
171 171
172 start = ngx_atoof(p, r->args.len - (p - r->args.data)); 172 for (n = p; n < r->args.data + r->args.len; n++) {
173 if (*n == '&') {
174 break;
175 }
176 }
177
178 start = ngx_atoof(p, n - p);
173 179
174 if (start == NGX_ERROR || start >= len) { 180 if (start == NGX_ERROR || start >= len) {
175 start = 0; 181 start = 0;
176 } 182 }
177 183