aboutsummaryrefslogtreecommitdiff
path: root/lib/charset.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/charset.c')
-rw-r--r--lib/charset.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/charset.c b/lib/charset.c
index cd186a5..8ff8d59 100644
--- a/lib/charset.c
+++ b/lib/charset.c
@@ -12,14 +12,14 @@
* utf8/utf16 conversion mostly lifted from grub
*/
-size_t utf16_strlen(const uint16_t *in)
+size_t u16_strlen(const u16 *in)
{
size_t i;
for (i = 0; in[i]; i++);
return i;
}
-size_t utf16_strnlen(const uint16_t *in, size_t count)
+size_t u16_strnlen(const u16 *in, size_t count)
{
size_t i;
for (i = 0; count-- && in[i]; i++);
@@ -39,7 +39,11 @@ uint16_t *utf16_strcpy(uint16_t *dest, const uint16_t *src)
uint16_t *utf16_strdup(const uint16_t *s)
{
uint16_t *new;
- if (!s || !(new = malloc((utf16_strlen(s) + 1) * 2)))
+
+ if (!s)
+ return NULL;
+ new = malloc((u16_strlen(s) + 1) * 2);
+ if (!new)
return NULL;
utf16_strcpy(new, s);
return new;