diff src/http/modules/perl/ngx_http_perl_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 314c3d7cc3a5
children 0570e42ffeed
line wrap: on
line diff
--- a/src/http/modules/perl/ngx_http_perl_module.c
+++ b/src/http/modules/perl/ngx_http_perl_module.c
@@ -421,7 +421,7 @@ ngx_http_perl_ssi(ngx_http_request_t *r,
             return NGX_ERROR;
         }
 
-        asv[0] = (SV *) i;
+        asv[0] = (SV *) (uintptr_t) i;
 
         for (i = 0; args[i]; i++) {
             asv[i + 1] = newSVpvn((char *) args[i]->data, args[i]->len);
@@ -692,7 +692,7 @@ ngx_http_perl_call_handler(pTHX_ ngx_htt
     if (args) {
         EXTEND(sp, (intptr_t) args[0]);
 
-        for (i = 1; i <= (ngx_uint_t) args[0]; i++) {
+        for (i = 1; i <= (uintptr_t) args[0]; i++) {
             PUSHs(sv_2mortal(args[i]));
         }
     }