diff options
author | hjk <[email protected]> | 2010-03-05 11:10:58 +0100 |
---|---|---|
committer | hjk <[email protected]> | 2010-03-05 11:11:20 +0100 |
commit | ed4278aba315a1c0184ce01adde430cf6ee27224 (patch) | |
tree | fef6f49d5d1d7be176e259b0af247f6cb15fe275 /src/plugins/debugger/watchutils.cpp | |
parent | 72ecc8a4fae0d4eda2847a41bea79bdebf69602d (diff) |
debugger: fix new wstring dumper encoding
Diffstat (limited to 'src/plugins/debugger/watchutils.cpp')
-rw-r--r-- | src/plugins/debugger/watchutils.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/plugins/debugger/watchutils.cpp b/src/plugins/debugger/watchutils.cpp index 8137b4744d9..51c45ef7833 100644 --- a/src/plugins/debugger/watchutils.cpp +++ b/src/plugins/debugger/watchutils.cpp @@ -646,13 +646,20 @@ QString decodeData(const QByteArray &ba, int encoding) //qDebug() << quoteUnprintableLatin1(decodedBa) << "\n\n"; return doubleQuote + QString::fromLatin1(decodedBa) + doubleQuote; } - case 7: { // %04x encoded 16 bit data + case 7: { // %04x encoded 16 bit data, Little Endian const QChar doubleQuote(QLatin1Char('"')); const QByteArray decodedBa = QByteArray::fromHex(ba); //qDebug() << quoteUnprintableLatin1(decodedBa) << "\n\n"; return doubleQuote + QString::fromUtf16(reinterpret_cast<const ushort *> (decodedBa.data()), decodedBa.size() / 2) + doubleQuote; } + case 8: { // %08x encoded 32 bit data, Little Endian + const QChar doubleQuote(QLatin1Char('"')); + const QByteArray decodedBa = QByteArray::fromHex(ba); + //qDebug() << quoteUnprintableLatin1(decodedBa) << "\n\n"; + return doubleQuote + QString::fromUcs4(reinterpret_cast<const uint *> + (decodedBa.data()), decodedBa.size() / 4) + doubleQuote; + } } qDebug() << "ENCODING ERROR: " << encoding; return QCoreApplication::translate("Debugger", "<Encoding error>"); |