QGb18030Codec: fix out-of-bounds access when decoding surrogate pairs
This is already the second surrogate of the pair, there's no need to + +i. Fixes: QTBUG-80268 Change-Id: Ia2aa807ffa8a4c798425fffd15d9a48ee0ca8ed7 Reviewed-by: Lars Knoll <lars.knoll@qt.io>bb10
parent
9a82a29000
commit
31e94dc96c
|
|
@ -107,7 +107,6 @@ QByteArray QGb18030Codec::convertFromUnicode(const QChar *uc, int len, Converter
|
|||
if (high >= 0) {
|
||||
if (uc[i].isLowSurrogate()) {
|
||||
// valid surrogate pair
|
||||
++i;
|
||||
uint u = QChar::surrogateToUcs4(high, uc[i].unicode());
|
||||
len = qt_UnicodeToGb18030(u, buf);
|
||||
if (len >= 2) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue