Convert to unsigned char before applying bit shift operator (#4664)

* Convert to unsigned char before applying bit shift operator

* convert to const unsigned char inline

* convert to unsigned char inline
This commit is contained in:
ianXian 2018-03-09 09:45:47 -08:00 committed by Wouter van Oortmerssen
parent e78825e7a0
commit 60de374486
1 changed files with 1 additions and 1 deletions

View File

@ -321,7 +321,7 @@ inline int FromUTF8(const char **in) {
break;
}
}
if ((**in << len) & 0x80) return -1; // Bit after leading 1's must be 0.
if ((static_cast<const unsigned char>(**in) << len) & 0x80) return -1; // Bit after leading 1's must be 0.
if (!len) return *(*in)++;
// UTF-8 encoded values with a length are between 2 and 4 bytes.
if (len < 2 || len > 4) { return -1; }