- Implement IS_TEXT_UNICODE_ILLEGAL_CHARS and IS_TEXT_UNICODE_ASCII16 flags
* It fixes 7 tests for the IsTextUnicode function in advapi32_apitest. All tests passed now
svn path=/trunk/; revision=72486
last_lo_byte = lo_byte;
last_hi_byte = hi_byte;
last_lo_byte = lo_byte;
last_hi_byte = hi_byte;
+
+ switch (s[i])
+ {
+ case 0xFFFE: /* Reverse BOM */
+ case UNICODE_NULL:
+ case 0x0A0D: /* ASCII CRLF (packed into one word) */
+ case 0xFFFF: /* Unicode 0xFFFF */
+ out_flags |= IS_TEXT_UNICODE_ILLEGAL_CHARS;
+ break;
+ }
+ }
+
+ if (lo_byte_diff < 127 && !hi_byte_diff)
+ {
+ out_flags |= IS_TEXT_UNICODE_ASCII16;
NEW_TEST(L"\xFFFE" L"UNICODE String 5 Привет!", IS_TEXT_UNICODE_STATISTICS, 0, FALSE),
NEW_TEST(L"\xFFFE" L"UNICODE String 5 Привет!", INVALID_FLAG, 0, FALSE),
NEW_TEST(L"\xFFFE" L"UNICODE String 5 Привет!", IS_TEXT_UNICODE_STATISTICS, 0, FALSE),
NEW_TEST(L"\xFFFE" L"UNICODE String 5 Привет!", INVALID_FLAG, 0, FALSE),
/* Reverse BOM */
NEW_TEST(L"UNICODE S" L"\xFFFE" L"tring 5 Привет!", IS_TEXT_UNICODE_ILLEGAL_CHARS, IS_TEXT_UNICODE_ILLEGAL_CHARS, FALSE),
/* UNICODE_NUL */
/* Reverse BOM */
NEW_TEST(L"UNICODE S" L"\xFFFE" L"tring 5 Привет!", IS_TEXT_UNICODE_ILLEGAL_CHARS, IS_TEXT_UNICODE_ILLEGAL_CHARS, FALSE),
/* UNICODE_NUL */