diff options
author | Heinrich Schuchardt <xypron.glpk@gmx.de> | 2018-08-31 21:31:26 +0200 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2018-09-23 21:55:29 +0200 |
commit | 1dde0d57a5d1281aaa949e9bf7b5c476345a56ee (patch) | |
tree | d3d429da4ee0d2fc08a040ef4ca556d247907a07 /lib/charset.c | |
parent | fbb3ea806f62b7e27bbae86c42d8f73f05de4bd7 (diff) | |
download | u-boot-1dde0d57a5d1281aaa949e9bf7b5c476345a56ee.tar.gz |
efi_loader: rename utf16_strlen, utf16_strnlen
The function names utf16_strlen() and utf16_strnlen() are misnomers.
The functions do not count utf-16 characters but non-zero words.
So let's rename them to u16_strlen and u16_strnlen().
In utf16_dup() avoid assignment in if clause.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'lib/charset.c')
-rw-r--r-- | lib/charset.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/charset.c b/lib/charset.c index cd186a5a5a..8ff8d59957 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; |