}
EAPI char *
-eina_str_base64_encode(unsigned char const *src, unsigned int len)
+eina_str_base64_encode(const unsigned char *src, unsigned int len)
{
+ unsigned char inarr[3], outarr[4];
char *dest;
int i = 0, j = 0, k = 0;
- unsigned char inarr[3], outarr[4];
if (!src) return NULL;
- dest = malloc(((len + 2) / 3) * 4); // Max length of encoded string.
+ // Max length of encoded string.
+ dest = malloc(sizeof (char) * (((len + 2) / 3) * 4 + 1));
if (!dest) return NULL;
while (len--)
}
+ dest[k] = '\0';
+
return dest;
}
*
* @since 1.17.0
*/
-EAPI char *eina_str_base64_encode(unsigned char const *src, unsigned int len);
+EAPI char *eina_str_base64_encode(const unsigned char *src, unsigned int len);
#include "eina_inline_str.x"