|
@ -150,8 +150,8 @@ |
|
|
static uint8_t utf_hi_char; // UTF-8 high part
|
|
|
static uint8_t utf_hi_char; // UTF-8 high part
|
|
|
static bool seen_c2 = false; |
|
|
static bool seen_c2 = false; |
|
|
uint8_t d = c; |
|
|
uint8_t d = c; |
|
|
if ( d >= 0x80u ) { // UTF-8 handling
|
|
|
if (d >= 0x80u) { // UTF-8 handling
|
|
|
if ( (d >= 0xC0u) && (!seen_c2) ) { |
|
|
if (d >= 0xC0u && !seen_c2) { |
|
|
utf_hi_char = d - 0xC2u; |
|
|
utf_hi_char = d - 0xC2u; |
|
|
seen_c2 = true; |
|
|
seen_c2 = true; |
|
|
return 0; |
|
|
return 0; |
|
@ -185,10 +185,10 @@ |
|
|
seen_c4 = false, |
|
|
seen_c4 = false, |
|
|
seen_c5 = false; |
|
|
seen_c5 = false; |
|
|
uint8_t d = c; |
|
|
uint8_t d = c; |
|
|
if ( d >= 0x80u ) { // UTF-8 handling
|
|
|
if (d >= 0x80u) { // UTF-8 handling
|
|
|
if ( d == 0xC4u ) {seen_c4 = true; return 0;} |
|
|
if (d == 0xC4u) { seen_c4 = true; return 0; } |
|
|
else if ( d == 0xC5u ) {seen_c5 = true; return 0;} |
|
|
else if (d == 0xC5u) { seen_c5 = true; return 0; } |
|
|
else if ( (d >= 0xC0u) && (!seen_c2) ) { |
|
|
else if (d >= 0xC0u && !seen_c2) { |
|
|
utf_hi_char = d - 0xC2u; |
|
|
utf_hi_char = d - 0xC2u; |
|
|
seen_c2 = true; |
|
|
seen_c2 = true; |
|
|
return 0; |
|
|
return 0; |
|
@ -236,8 +236,8 @@ |
|
|
static uint8_t utf_hi_char; // UTF-8 high part
|
|
|
static uint8_t utf_hi_char; // UTF-8 high part
|
|
|
static bool seen_ce = false; |
|
|
static bool seen_ce = false; |
|
|
uint8_t d = c; |
|
|
uint8_t d = c; |
|
|
if ( d >= 0x80 ) { // UTF-8 handling
|
|
|
if (d >= 0x80) { // UTF-8 handling
|
|
|
if ( (d >= 0xC0) && (!seen_ce) ) { |
|
|
if (d >= 0xC0 && !seen_ce) { |
|
|
utf_hi_char = d - 0xCE; |
|
|
utf_hi_char = d - 0xCE; |
|
|
seen_ce = true; |
|
|
seen_ce = true; |
|
|
return 0; |
|
|
return 0; |
|
@ -424,10 +424,10 @@ |
|
|
seen_c4 = false, |
|
|
seen_c4 = false, |
|
|
seen_c5 = false; |
|
|
seen_c5 = false; |
|
|
uint8_t d = c; |
|
|
uint8_t d = c; |
|
|
if ( d >= 0x80u ) { // UTF-8 handling
|
|
|
if (d >= 0x80u) { // UTF-8 handling
|
|
|
if ( d == 0xC4u ) {seen_c4 = true; return 0;} |
|
|
if (d == 0xC4u) { seen_c4 = true; return 0; } |
|
|
else if ( d == 0xC5u ) {seen_c5 = true; return 0;} |
|
|
else if (d == 0xC5u) { seen_c5 = true; return 0; } |
|
|
else if ( d == 0xC3u ) {seen_c3 = true; return 0;} |
|
|
else if (d == 0xC3u) { seen_c3 = true; return 0; } |
|
|
else if (seen_c4) { |
|
|
else if (seen_c4) { |
|
|
switch(d) { |
|
|
switch(d) { |
|
|
case 0x84u ... 0x87u: d -= 4; break; //Ą - ć
|
|
|
case 0x84u ... 0x87u: d -= 4; break; //Ą - ć
|
|
|