diff options
author | Marc Mutz <marc.mutz@qt.io> | 2023-07-06 18:07:27 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-08-05 16:15:51 +0000 |
commit | eac1ec49ee3da95e799a5926ec177f422d4b4c9c (patch) | |
tree | f8803577eec5ca3e33b0b9183973cddf3c96bb95 /src | |
parent | 68db12c7ded5d6039ccadd94588902762e9e1299 (diff) |
Fix UB (signed char passed to <cctype> function)
Passing char to a <cctype> function is UB for characters that are outside the range [0...255, EOF].
You have to cast chars to uchar so the implicit conversion to int
does not produce negative values.
Amends a6ffce09ce6d4fd39fbb50eb58f7b5d1027f4d60.
Change-Id: I597ee3ff87d38c40dbdf794ee07d302da26f520e
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit cf084d958c1d795fbdc06b6a377ab61d68e0960a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/render/shadergraph/qshadergenerator.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/render/shadergraph/qshadergenerator.cpp b/src/render/shadergraph/qshadergenerator.cpp index 96e80312a..48c7b37d1 100644 --- a/src/render/shadergraph/qshadergenerator.cpp +++ b/src/render/shadergraph/qshadergenerator.cpp @@ -616,7 +616,7 @@ QByteArray QShaderGenerator::createShaderCode(const QStringList &enabledLayers) qsizetype end = begin + 1; char endChar = line.at(end); const qsizetype size = line.size(); - while (end < size && (std::isalnum(endChar) || endChar == '_')) { + while (end < size && (std::isalnum(uchar(endChar)) || endChar == '_')) { ++end; endChar = line.at(end); } |