]> mj.ucw.cz Git - libucw.git/blob - charset/utf8.c
Add path to all includes.
[libucw.git] / charset / utf8.c
1 /*
2  *      The UniCode Library -- UTF-8 Functions
3  *
4  *      (c) 1997 Martin Mares, <mj@atrey.karlin.mff.cuni.cz>
5  */
6
7 #include "charset/unicode.h"
8
9 uns
10 ucs2_to_utf8(byte *d, word *s)
11 {
12   byte *d0 = d;
13
14   while (*s)
15     {
16       uns u = *s++;
17       PUT_UTF8(d,u);
18     }
19   *d = 0;
20   return d - d0;
21 }
22
23 uns
24 utf8_to_ucs2(word *d, byte *s)
25 {
26   word *d0 = d;
27
28   while (*s)
29     if (IS_UTF8(*s))
30       {
31         uns u;
32         GET_UTF8_CHAR(s,u);
33         *d++ = u;
34       }
35     else if (*s >= 0x80)
36       *d++ = UNI_REPLACEMENT;
37     else
38       *d++ = *s++;
39   *d = 0;
40   return d0 - d;
41 }