summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/serialport/qserialportinfo_win.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/serialport/qserialportinfo_win.cpp b/src/serialport/qserialportinfo_win.cpp
index 546d5e1..b3333fa 100644
--- a/src/serialport/qserialportinfo_win.cpp
+++ b/src/serialport/qserialportinfo_win.cpp
@@ -65,11 +65,10 @@ static inline const QList<GuidFlagsPair>& guidFlagsPairs()
static QString toStringAndTrimNullCharacter(const QByteArray &buffer)
{
- QString result = QString::fromWCharArray(reinterpret_cast<const wchar_t *>(buffer.constData()),
- buffer.size() / sizeof(wchar_t));
- while (!result.isEmpty() && (result.at(result.size() - 1).unicode() == 0))
- result.chop(1);
- return result;
+ const QString result = QString::fromWCharArray(reinterpret_cast<const wchar_t *>(buffer.constData()),
+ buffer.size() / sizeof(wchar_t));
+ const int index = result.indexOf(QChar(0));
+ return index == -1 ? result : result.mid(0, index);
}
static QStringList portNamesFromHardwareDeviceMap()