libnx/nx/source/runtime/util/utf/encode_utf16.c
2018-01-22 20:11:55 +01:00

25 lines
344 B
C

#include "runtime/util/utf.h"
ssize_t
encode_utf16(uint16_t *out,
uint32_t in)
{
if(in < 0x10000)
{
if(out != NULL)
*out++ = in;
return 1;
}
else if(in < 0x110000)
{
if(out != NULL)
{
*out++ = (in >> 10) + 0xD7C0;
*out++ = (in & 0x3FF) + 0xDC00;
}
return 2;
}
return -1;
}