From e05dacfb07c170a87c9a9d1e206dc6f8d843854e Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 12 Jun 2025 08:13:49 +0200 Subject: [PATCH] Debugger: Use QStringDecoder instead of (deprecated) QTextCodec Fixes: QTCREATORBUG-33063 Change-Id: I0ea186ab0d2f1a149813c752d0953628c84ee8b4 Reviewed-by: David Schulz --- src/plugins/debugger/gdb/gdbengine.cpp | 6 +----- src/plugins/debugger/gdb/gdbengine.h | 3 +-- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index fcf1547a229..5f554c93c04 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -131,8 +131,6 @@ GdbEngine::GdbEngine() setObjectName("GdbEngine"); setDebuggerName("GDB"); - m_inferiorOutputCodec = TextCodec::codecForLocale(); - m_commandTimer.setSingleShot(true); connect(&m_commandTimer, &QTimer::timeout, this, &GdbEngine::commandTimeout); @@ -617,9 +615,7 @@ void GdbEngine::readGdbStandardError() void GdbEngine::readDebuggeeOutput(const QByteArray &ba) { - const QString msg = m_inferiorOutputCodec.toUnicode(ba.constData(), ba.size(), - &m_inferiorOutputCodecState); - + const QString msg = m_inferiorOutputDecoder.decode(ba); if (msg.startsWith("&\"") && isMostlyHarmlessMessage(QStringView{msg}.mid(2, msg.size() - 4))) showMessage("Mostly harmless terminal warning suppressed.", LogWarning); else diff --git a/src/plugins/debugger/gdb/gdbengine.h b/src/plugins/debugger/gdb/gdbengine.h index a217f2885fc..c9ccb62b575 100644 --- a/src/plugins/debugger/gdb/gdbengine.h +++ b/src/plugins/debugger/gdb/gdbengine.h @@ -91,8 +91,7 @@ private: ////////// General Interface ////////// void readGdbStandardError(); void readDebuggeeOutput(const QByteArray &ba); - Utils::TextCodec m_inferiorOutputCodec; - Utils::TextCodec::ConverterState m_inferiorOutputCodecState; + QStringDecoder m_inferiorOutputDecoder{Utils::TextCodec::encodingForLocale().name()}; QString m_inbuffer; bool m_busy = false;