comparison src/core/ngx_string.c @ 477:ad1e9ebf93bb release-0.1.13

nginx-0.1.13-RELEASE import *) Feature: the server_names_hash and server_names_hash_threshold directives. *) Bugfix: the *.domain.tld names in the "server_name" directive did not work. *) Bugfix: the %request_length log parameter logged the incorrect length.
author Igor Sysoev <igor@sysoev.ru>
date Tue, 21 Dec 2004 12:30:30 +0000
parents 8e8f3af115b5
children c52408583801
comparison
equal deleted inserted replaced
476:7e8b84ab09e9 477:ad1e9ebf93bb
84 } 84 }
85 85
86 86
87 u_char *ngx_vsnprintf(u_char *buf, size_t max, const char *fmt, va_list args) 87 u_char *ngx_vsnprintf(u_char *buf, size_t max, const char *fmt, va_list args)
88 { 88 {
89 u_char *p, zero, *last, temp[NGX_MAX_INT_LEN]; 89 u_char *p, zero, *last, temp[NGX_INT64_LEN];
90 int d; 90 int d;
91 size_t len; 91 size_t len;
92 uint32_t ui32; 92 uint32_t ui32;
93 int64_t i64; 93 int64_t i64;
94 uint64_t ui64; 94 uint64_t ui64;
118 zero = (u_char) ((*++fmt == '0') ? '0' : ' '); 118 zero = (u_char) ((*++fmt == '0') ? '0' : ' ');
119 width = 0; 119 width = 0;
120 sign = 1; 120 sign = 1;
121 hexadecimal = 0; 121 hexadecimal = 0;
122 122
123 p = temp + NGX_MAX_INT_LEN; 123 p = temp + NGX_INT64_LEN;
124 124
125 while (*fmt >= '0' && *fmt <= '9') { 125 while (*fmt >= '0' && *fmt <= '9') {
126 width = width * 10 + *fmt++ - '0'; 126 width = width * 10 + *fmt++ - '0';
127 } 127 }
128 128
335 do { 335 do {
336 *--p = (u_char) (ui64 % 10 + '0'); 336 *--p = (u_char) (ui64 % 10 + '0');
337 } while (ui64 /= 10); 337 } while (ui64 /= 10);
338 } 338 }
339 339
340 len = (temp + NGX_MAX_INT_LEN) - p; 340 len = (temp + NGX_INT64_LEN) - p;
341 341
342 while (len++ < width && buf < last) { 342 while (len++ < width && buf < last) {
343 *buf++ = zero; 343 *buf++ = zero;
344 } 344 }
345 345
346 len = (temp + NGX_MAX_INT_LEN) - p; 346 len = (temp + NGX_INT64_LEN) - p;
347 if (buf + len > last) { 347 if (buf + len > last) {
348 len = last - buf; 348 len = last - buf;
349 } 349 }
350 350
351 buf = ngx_cpymem(buf, p, len); 351 buf = ngx_cpymem(buf, p, len);