diff src/http/modules/ngx_http_map_module.c @ 5362:79b9101cecf4

Handling of ngx_int_t != intptr_t case. Casts between pointers and integers produce warnings on size mismatch. To silence them, cast to (u)intptr_t should be used. Prevoiusly, casts to ngx_(u)int_t were used in some cases, and several ngx_int_t expressions had no casts. As of now it's mostly style as ngx_int_t is defined as intptr_t.
author Maxim Dounin <mdounin@mdounin.ru>
date Wed, 04 Sep 2013 21:16:59 +0400
parents 5482671df278
children 2a621245f4cf
line wrap: on
line diff
--- a/src/http/modules/ngx_http_map_module.c
+++ b/src/http/modules/ngx_http_map_module.c
@@ -131,7 +131,7 @@ ngx_http_map_variable(ngx_http_request_t
     }
 
     if (!value->valid) {
-        value = ngx_http_get_flushed_variable(r, (ngx_uint_t) value->data);
+        value = ngx_http_get_flushed_variable(r, (uintptr_t) value->data);
 
         if (value == NULL || value->not_found) {
             value = &ngx_http_variable_null_value;
@@ -414,7 +414,7 @@ ngx_http_map(ngx_conf_t *cf, ngx_command
         var = ctx->var_values.elts;
 
         for (i = 0; i < ctx->var_values.nelts; i++) {
-            if (index == (ngx_int_t) var[i].data) {
+            if (index == (intptr_t) var[i].data) {
                 var = &var[i];
                 goto found;
             }
@@ -429,7 +429,7 @@ ngx_http_map(ngx_conf_t *cf, ngx_command
         var->no_cacheable = 0;
         var->not_found = 0;
         var->len = 0;
-        var->data = (u_char *) index;
+        var->data = (u_char *) (intptr_t) index;
 
         goto found;
     }