lib: add wchar strdup
Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
26793cc2cc
commit
42c8b4589a
|
@ -5,6 +5,8 @@
|
|||
|
||||
typedef u16 wchar_t;
|
||||
|
||||
wchar_t *strdup_wchar(const wchar_t *src);
|
||||
|
||||
char *strcpy_wchar_to_char(char *dst, const wchar_t *src);
|
||||
|
||||
wchar_t *strcpy_char_to_wchar(wchar_t *dst, const char *src);
|
||||
|
|
16
lib/wchar.c
16
lib/wchar.c
|
@ -31,6 +31,22 @@ size_t wcslen(const wchar_t *s)
|
|||
return len;
|
||||
}
|
||||
|
||||
wchar_t *strdup_wchar(const wchar_t *src)
|
||||
{
|
||||
int len = wcslen(src);
|
||||
wchar_t *tmp, *dst;
|
||||
|
||||
if (!(dst = malloc((len + 1) * sizeof(wchar_t))))
|
||||
return NULL;
|
||||
|
||||
tmp = dst;
|
||||
|
||||
while ((*dst++ = *src++))
|
||||
/* nothing */;
|
||||
|
||||
return tmp;
|
||||
}
|
||||
|
||||
char *strcpy_wchar_to_char(char *dst, const wchar_t *src)
|
||||
{
|
||||
char *ret = dst;
|
||||
|
|
Loading…
Reference in New Issue