cpukit/libmisc/utf8proc/utf8proc.c: Avoid overflow

This commit is contained in:
Joel Sherrill
2015-03-24 08:17:13 -05:00
parent 0771936eab
commit e02b20a3d3
+5
View File
@@ -145,8 +145,13 @@ ssize_t utf8proc_iterate(
(uc >= 0xFDD0 && uc < 0xFDF0)) uc = -1;
break;
case 4:
#if defined(__rtems__)
uc = (((int32_t)str[0] & 0x07) << 18) + (((int32_t)str[1] & 0x3F) << 12)
+ (((int32_t)str[2] & 0x3F) << 6) + (str[3] & 0x3F);
#else
uc = ((str[0] & 0x07) << 18) + ((str[1] & 0x3F) << 12)
+ ((str[2] & 0x3F) << 6) + (str[3] & 0x3F);
#endif
if (uc < 0x10000 || uc >= 0x110000) uc = -1;
break;
}