comparison src/core/ngx_string.c @ 4209:9679fc14c063

Fixed utf8 decode (ticket #25). Patch by Alexey Kuts.
author Maxim Dounin <mdounin@mdounin.ru>
date Thu, 13 Oct 2011 13:56:41 +0000
parents 61e4af19df9f
children 0a8e51a16484
comparison
equal deleted inserted replaced
4208:470462cfa31b 4209:9679fc14c063
1209 size_t len; 1209 size_t len;
1210 uint32_t u, i, valid; 1210 uint32_t u, i, valid;
1211 1211
1212 u = **p; 1212 u = **p;
1213 1213
1214 if (u > 0xf0) { 1214 if (u >= 0xf0) {
1215 1215
1216 u &= 0x07; 1216 u &= 0x07;
1217 valid = 0xffff; 1217 valid = 0xffff;
1218 len = 3; 1218 len = 3;
1219 1219
1220 } else if (u > 0xe0) { 1220 } else if (u >= 0xe0) {
1221 1221
1222 u &= 0x0f; 1222 u &= 0x0f;
1223 valid = 0x7ff; 1223 valid = 0x7ff;
1224 len = 2; 1224 len = 2;
1225 1225
1226 } else if (u > 0xc0) { 1226 } else if (u >= 0xc2) {
1227 1227
1228 u &= 0x1f; 1228 u &= 0x1f;
1229 valid = 0x7f; 1229 valid = 0x7f;
1230 len = 1; 1230 len = 1;
1231 1231