diff options
-rw-r--r-- | lib/base64.c | 18 | ||||
-rw-r--r-- | lib/memdebug.c | 4 | ||||
-rw-r--r-- | lib/mprintf.c | 2 |
3 files changed, 15 insertions, 9 deletions
diff --git a/lib/base64.c b/lib/base64.c index 26d89231e..cb67e5ad7 100644 --- a/lib/base64.c +++ b/lib/base64.c @@ -54,22 +54,28 @@ static const char table64[]= static void decodeQuantum(unsigned char *dest, const char *src) { - unsigned int x = 0; + unsigned long x = 0; int i; char *found; + union { + unsigned long uns; + long sig; + } offset; for(i = 0; i < 4; i++) { - if((found = strchr(table64, src[i])) != NULL) - x = (x << 6) + (unsigned int)(found - table64); + if((found = strchr(table64, src[i])) != NULL) { + offset.sig = found - table64; + x = (x << 6) + offset.uns; + } else if(src[i] == '=') x = (x << 6); } - dest[2] = (unsigned char)(x & 255); + dest[2] = (unsigned char)(x & 0xFFUL); x >>= 8; - dest[1] = (unsigned char)(x & 255); + dest[1] = (unsigned char)(x & 0xFFUL); x >>= 8; - dest[0] = (unsigned char)(x & 255); + dest[0] = (unsigned char)(x & 0xFFUL); } /* diff --git a/lib/memdebug.c b/lib/memdebug.c index 6261749fb..266480e46 100644 --- a/lib/memdebug.c +++ b/lib/memdebug.c @@ -222,7 +222,7 @@ void *curl_dorealloc(void *ptr, size_t wantedsize, return NULL; if(ptr) - mem = (struct memdebug *)((char *)ptr - offsetof(struct memdebug, mem)); + mem = (void *)((char *)ptr - offsetof(struct memdebug, mem)); mem = (Curl_crealloc)(mem, size); if(source) @@ -243,7 +243,7 @@ void curl_dofree(void *ptr, int line, const char *source) assert(ptr != NULL); - mem = (struct memdebug *)((char *)ptr - offsetof(struct memdebug, mem)); + mem = (void *)((char *)ptr - offsetof(struct memdebug, mem)); /* destroy */ memset(mem->mem, 0x13, mem->size); diff --git a/lib/mprintf.c b/lib/mprintf.c index 3d65e9ff7..f5daa39fc 100644 --- a/lib/mprintf.c +++ b/lib/mprintf.c @@ -911,7 +911,7 @@ static int dprintf_formatf( static const char strnil[] = "(nil)"; const char *point; - width -= sizeof(strnil) - 1; + width -= (long)(sizeof(strnil) - 1); if(p->flags & FLAGS_LEFT) while(width-- > 0) OUTCHAR(' '); |