diff --git a/lib/zlib/inffast.c b/lib/zlib/inffast.c
index 4834b0c86e00c3d4e6f0f217fa1d9f8f0dbdd5a0..38f2f905e884e59fc4f8553b4f2ce9c5e5b4f85e 100644
--- a/lib/zlib/inffast.c
+++ b/lib/zlib/inffast.c
@@ -105,7 +105,7 @@ unsigned start;         /* inflate()'s starting value for strm->avail_out */
          * overflow detected, limit strm->avail_in to the
          * max. possible size and recalculate last
          */
-        strm->avail_in = 0xffffffff - (unsigned int)in;
+	strm->avail_in = 0xffffffff - (uintptr_t)in;
         last = in + (strm->avail_in - 5);
     }
     out = strm->next_out - OFF;