diff options
author | Karsten Heimrich <karsten.heimrich@qt.io> | 2020-06-24 15:35:27 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@qt.io> | 2020-06-26 12:50:52 +0200 |
commit | 1e5c0eaa088fd78cb482070b379230c31efcd5df (patch) | |
tree | 13a970b5b8b3e38ecc009fa4c6a89f2b24d8f19f | |
parent | ac9c8b3cb3a7951f1f3030a883976b9fc285822f (diff) |
Replace QTextCodec with QStringDecoder
Task-number: QTBUG-75665
Change-Id: I2afdb3ec181f63775f77de70a5de8541f6a8a94f
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
-rw-r--r-- | src/knx/dpt/qknxutf8string.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/knx/dpt/qknxutf8string.cpp b/src/knx/dpt/qknxutf8string.cpp index 30edb73..bdeadc6 100644 --- a/src/knx/dpt/qknxutf8string.cpp +++ b/src/knx/dpt/qknxutf8string.cpp @@ -29,7 +29,8 @@ #include "qknxutf8string.h" #include "qknxdatapointtype_p.h" -#include "qtextcodec.h" + +#include <QtCore/qstringconverter.h> QT_BEGIN_NAMESPACE @@ -134,13 +135,12 @@ bool QKnxUtf8String::setString(const char *string, int size) if (size >= USHRT_MAX) return false; - QTextCodec *codec = QTextCodec::codecForName("UTF-8"); - if (!codec) + auto toUtf16 = QStringDecoder(QStringDecoder::Utf8, QStringDecoder::Flag::Stateless); + if (!toUtf16.isValid()) return false; - QTextCodec::ConverterState state; - auto text = codec->toUnicode(string, size, &state); - if (state.invalidChars > 0) + auto text = toUtf16(string, size); + if (toUtf16.hasError()) return false; return setString(text); } |