Skip to content

Commit 63672d2

Browse files
committed
fix(sessionmanager): adapt QString::arg usage for Qt 6.10
Qt 6 no longer accepts QDBusReply<T> as an argument to QString::arg(). Passing a QDBusReply<unsigned int> directly results in a template substitution failure with enable_if<false>. This fix extracts the actual value using .value() before passing it to QString::arg(), restoring compatibility with Qt 6.10 and preserving existing logic.
1 parent 8110d51 commit 63672d2

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/dde-session/impl/sessionmanager.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -484,7 +484,8 @@ void SessionManager::RequestSuspend()
484484
void SessionManager::SetLocked(bool lock)
485485
{
486486
// 仅允许dde-lock进程调用
487-
QString cmdLine = QString("/proc/%1/cmdline").arg(connection().interface()->servicePid(message().service()));
487+
QString cmdLine = QString("/proc/%1/cmdline").arg(connection().interface()->servicePid(message().service()).value());
488+
488489
QFile file(cmdLine);
489490

490491
// NOTE: 如果以deepin-turbo进行加速启动,这里是不准确的,可能需要判断desktop文件的全路径,不过deepin-turbo后续应该会放弃支持

0 commit comments

Comments
 (0)