119c119,120
<   size_t *wrote = (size_t *)wrotep;
---
>   /* size_t *wrote = (size_t *)wrotep; Note this will work for 32 bit but will cause 64 bit execution error */
>   size_t wrote = 0; /* nothing's written yet */
121d121
<   *wrote = 0; /* nothing's written yet */
237c237,238
<       *wrote += piece;
---
>       wrote += piece;
> 	  *wrotep = (ssize_t)wrote; /* This must be trucated to (ssize_t) when 64 bit code is used*/
