diff options
author | Laszlo Agocs <laszlo.agocs@theqtcompany.com> | 2016-04-05 15:24:53 +0000 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2016-04-05 15:24:53 +0000 |
commit | df5159a8a6b6bf585feb1473054dec2ed5ddb11a (patch) | |
tree | a56ad5c69e735eeeb1e93e01330ec2498f5ba497 /src/gui/text/qrawfont.cpp | |
parent | 0683c9291f9c1ffe0625fdadee198840047f0e92 (diff) | |
parent | f2856875843efce9a00e90dad05bde358ab82197 (diff) |
Merge "Merge remote-tracking branch 'origin/5.7' into dev" into refs/staging/dev
Diffstat (limited to 'src/gui/text/qrawfont.cpp')
-rw-r--r-- | src/gui/text/qrawfont.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/gui/text/qrawfont.cpp b/src/gui/text/qrawfont.cpp index 6065e17d9b..2a53b8869d 100644 --- a/src/gui/text/qrawfont.cpp +++ b/src/gui/text/qrawfont.cpp @@ -634,18 +634,18 @@ QList<QFontDatabase::WritingSystem> QRawFont::supportedWritingSystems() const if (d->isValid()) { QByteArray os2Table = fontTable("OS/2"); if (os2Table.size() > 86) { - char *data = os2Table.data(); - quint32 *bigEndianUnicodeRanges = reinterpret_cast<quint32 *>(data + 42); - quint32 *bigEndianCodepageRanges = reinterpret_cast<quint32 *>(data + 78); + const uchar * const data = reinterpret_cast<const uchar *>(os2Table.constData()); + const uchar * const bigEndianUnicodeRanges = data + 42; + const uchar * const bigEndianCodepageRanges = data + 78; quint32 unicodeRanges[4]; quint32 codepageRanges[2]; - for (int i=0; i<4; ++i) { - if (i < 2) - codepageRanges[i] = qFromBigEndian(bigEndianCodepageRanges[i]); - unicodeRanges[i] = qFromBigEndian(bigEndianUnicodeRanges[i]); - } + for (size_t i = 0; i < sizeof unicodeRanges / sizeof *unicodeRanges; ++i) + unicodeRanges[i] = qFromBigEndian<quint32>(bigEndianUnicodeRanges + i * sizeof(quint32)); + + for (size_t i = 0; i < sizeof codepageRanges / sizeof *codepageRanges; ++i) + codepageRanges[i] = qFromBigEndian<quint32>(bigEndianCodepageRanges + i * sizeof(quint32)); QSupportedWritingSystems ws = QPlatformFontDatabase::writingSystemsFromTrueTypeBits(unicodeRanges, codepageRanges); for (int i = 0; i < QFontDatabase::WritingSystemsCount; ++i) { |