diff options
Diffstat (limited to 'Source/CTest/Curl/base64.c')
-rw-r--r-- | Source/CTest/Curl/base64.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/Source/CTest/Curl/base64.c b/Source/CTest/Curl/base64.c index 183df27..95d4cf6 100644 --- a/Source/CTest/Curl/base64.c +++ b/Source/CTest/Curl/base64.c @@ -145,10 +145,12 @@ int Curl_base64_encode(const void *inp, int insize, char **outptr) ibuf[i] = 0; } - obuf [0] = (ibuf [0] & 0xFC) >> 2; - obuf [1] = ((ibuf [0] & 0x03) << 4) | ((ibuf [1] & 0xF0) >> 4); - obuf [2] = ((ibuf [1] & 0x0F) << 2) | ((ibuf [2] & 0xC0) >> 6); - obuf [3] = ibuf [2] & 0x3F; + obuf [0] = (unsigned char)((ibuf [0] & 0xFC) >> 2); + obuf [1] = (unsigned char)(((ibuf [0] & 0x03) << 4) | + ((ibuf [1] & 0xF0) >> 4)); + obuf [2] = (unsigned char)(((ibuf [1] & 0x0F) << 2) | + ((ibuf [2] & 0xC0) >> 6)); + obuf [3] = (unsigned char)(ibuf [2] & 0x3F); switch(inputparts) { case 1: /* only one byte read */ |