Welcome! Log In Create A New Profile

Advanced

[nginx] svn commit: r4562 - trunk/src/http/modules

Anonymous User
March 28, 2012 02:52AM
Author: ru
Date: 2012-03-28 06:50:23 +0000 (Wed, 28 Mar 2012)
New Revision: 4562
URL: http://trac.nginx.org/nginx/changeset/4562/nginx

Log:
Fixed calculation of range boundaries.


Modified:
trunk/src/http/modules/ngx_http_split_clients_module.c

Modified: trunk/src/http/modules/ngx_http_split_clients_module.c
===================================================================
--- trunk/src/http/modules/ngx_http_split_clients_module.c 2012-03-28 01:56:49 UTC (rev 4561)
+++ trunk/src/http/modules/ngx_http_split_clients_module.c 2012-03-28 06:50:23 UTC (rev 4562)
@@ -97,7 +97,7 @@
ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
"http split: %uD %uD", hash, part[i].percent);

- if (hash < part[i].percent) {
+ if (hash < part[i].percent || part[i].percent == 0) {
*v = part[i].value;
return NGX_OK;
}
@@ -111,8 +111,9 @@
ngx_conf_split_clients_block(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
{
char *rv;
+ uint32_t sum, last;
ngx_str_t *value, name;
- ngx_uint_t i, sum, last;
+ ngx_uint_t i;
ngx_conf_t save;
ngx_http_variable_t *var;
ngx_http_split_clients_ctx_t *ctx;
@@ -175,19 +176,15 @@
for (i = 0; i < ctx->parts.nelts; i++) {
sum = part[i].percent ? sum + part[i].percent : 10000;
if (sum > 10000) {
- ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
- "percent sum is more than 100%%");
- return NGX_CONF_ERROR;
+ ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
+ "percent sum is more than 100%%");
+ return NGX_CONF_ERROR;
}

if (part[i].percent) {
- part[i].percent = (uint32_t)
- (last + 0xffffffff / 10000 * part[i].percent);
- } else {
- part[i].percent = 0xffffffff;
+ last += part[i].percent * (uint64_t) 0xffffffff / 10000;
+ part[i].percent = last;
}
-
- last = part[i].percent;
}

return rv;

_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

[nginx] svn commit: r4562 - trunk/src/http/modules

Anonymous User 1085 March 28, 2012 02:52AM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 168
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready