23#include "wine/unicode.h"
31 return (
code >= 0xe000 &&
code <= 0xf8ff);
36 const unsigned char *
src,
unsigned int srclen )
39 const WCHAR def_unicode_char =
table->info.def_unicode_char;
40 const unsigned char def_char =
table->uni2cp_low[
table->uni2cp_high[def_unicode_char >> 8]
41 + (def_unicode_char & 0xff)];
44 if ((
cp2uni[*
src] == def_unicode_char && *
src != def_char) ||
55 const unsigned char *
src,
unsigned int srclen,
118 const unsigned char *
src,
unsigned int srclen,
145 const unsigned char *
src,
unsigned int srclen )
147 const unsigned char *
const cp2uni_lb =
table->cp2uni_leadbytes;
163 const unsigned char *
src,
unsigned int srclen )
166 const unsigned char *
const cp2uni_lb =
table->cp2uni_leadbytes;
167 const WCHAR def_unicode_char =
table->info.def_unicode_char;
168 const unsigned short def_char =
table->uni2cp_low[
table->uni2cp_high[def_unicode_char >> 8]
169 + (def_unicode_char & 0xff)];
172 unsigned char off = cp2uni_lb[*
src];
176 if (
cp2uni[(off << 8) +
src[1]] == def_unicode_char &&
177 ((
src[0] << 8) |
src[1]) != def_char)
break;
181 else if ((
cp2uni[*
src] == def_unicode_char && *
src != def_char) ||
192 const unsigned char *
src,
unsigned int srclen,
196 const unsigned char *
const cp2uni_lb =
table->cp2uni_leadbytes;
203 unsigned char off = cp2uni_lb[*
src];
219 const unsigned char *
src,
unsigned int srclen,
223 const unsigned char *
const cp2uni_lb =
table->cp2uni_leadbytes;
232 unsigned char off = cp2uni_lb[*
src];
247 unsigned char off = cp2uni_lb[*
src];
269 const unsigned char *
src = (
const unsigned char*)
s;
271 if (
table->info.char_size == 1)
static const WCHAR cp2uni[256]
#define MB_ERR_INVALID_CHARS
static DWORD LPDWORD LPCSTR DWORD srclen