From 8c8d56bc7ce63b8cfb854950f194c5b0c6a6415f Mon Sep 17 00:00:00 2001 From: Hillwood Yang Date: Thu, 4 Dec 2025 22:27:17 +0800 Subject: [PATCH] fix(sessionmanager): adapt QString::arg usage for Qt 6.10.1 Qt 6.10.1 no longer accepts QDBusReply as an argument to QString::arg(). Passing a QDBusReply directly results in a template substitution failure with enable_if. This fix extracts the actual value using .value() before passing it to QString::arg(), restoring compatibility with Qt 6.10.1 and preserving existing logic. --- src/dde-session/impl/sessionmanager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dde-session/impl/sessionmanager.cpp b/src/dde-session/impl/sessionmanager.cpp index 30df1b0..77e3ee0 100644 --- a/src/dde-session/impl/sessionmanager.cpp +++ b/src/dde-session/impl/sessionmanager.cpp @@ -484,7 +484,7 @@ void SessionManager::RequestSuspend() void SessionManager::SetLocked(bool lock) { // 仅允许dde-lock进程调用 - QString cmdLine = QString("/proc/%1/cmdline").arg(connection().interface()->servicePid(message().service())); + QString cmdLine = QString("/proc/%1/cmdline").arg(connection().interface()->servicePid(message().service()).value()); QFile file(cmdLine); // NOTE: 如果以deepin-turbo进行加速启动,这里是不准确的,可能需要判断desktop文件的全路径,不过deepin-turbo后续应该会放弃支持