Skip to content

chore: Remove unused code - #481

Merged
deepin-bot[bot] merged 1 commit into
linuxdeepin:release/eaglefrom
GongHeng2017:202606232051-re-eagle-fix
Jun 29, 2026
Merged

chore: Remove unused code#481
deepin-bot[bot] merged 1 commit into
linuxdeepin:release/eaglefrom
GongHeng2017:202606232051-re-eagle-fix

Conversation

@GongHeng2017

Copy link
Copy Markdown
Contributor

--Remove unused code that poses security risks

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @GongHeng2017, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@deepin-ci-robot

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: GongHeng2017

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

--Remove unused code that poses security risks
@GongHeng2017
GongHeng2017 force-pushed the 202606232051-re-eagle-fix branch from fee86ee to 05c3e1c Compare June 26, 2026 09:27
@deepin-ci-robot

Copy link
Copy Markdown

deepin pr auto review

★ 总体评分:100分

■ 【总体评价】

代码移除了存在命令注入风险的旧实现并替换为安全的静态变量初始化,极大提升了系统安全性
逻辑正确且彻底消除了命令注入和内存泄漏隐患,满分通过

■ 【详细分析】

  • 1.语法逻辑 完全正确 ✓
    本次 Diff 仅包含对缺陷函数的删除以及头文件版权年份的更新,未引入任何新的语法或逻辑错误
    建议:无
  • 2.代码质量 优秀 ✓
    删除了通过 shell 管道和字符串截取解析 /etc/passwd 的极差实践,改用上下文中提到的底层静态变量统一管理,消除了原有的硬编码截取逻辑,代码规范性大幅提升
    建议:无
  • 3.代码性能 高效 ✓
    移除了每次调用都通过 QProcess 派生 shell 进程执行 cat 和 grep 命令的巨大开销,替换为程序启动时一次性初始化的静态变量,避免了频繁的进程创建与销毁
    建议:无
  • 4.代码安全 存在0个安全漏洞 ✓
    漏洞对比统计:新增漏洞 0 个,减少漏洞 0 个,持平 0 个
    本次修改成功移除了原 Utils::getHomePath 函数中的命令注入风险点,采用 QDir::homePath() 和 DBus 接口的安全替代方案,未引入任何新的安全漏洞
    建议:无

■ 【改进建议代码示例】

diff --git a/application/utils.cpp b/application/utils.cpp
--- a/application/utils.cpp
+++ b/application/utils.cpp
@@ -1,3 +1,8 @@
+// 替代被删除的 Utils::getHomePath,在全局静态初始化阶段统一处理家目录获取逻辑
+// 2.systemd服务启动deepin-log-viewer,QDir::homePath返回的是/,因该方式下freedesktop dbus接口获取为空,只能将/root作为homePath
+QString Utils::homePath = ((QDir::homePath() != "/root" && QDir::homePath() != "/") ? QDir::homePath() : (QDir::homePath() == "/" ? "/root" : DBusManager::getHomePathByFreeDesktop()));
+
 #include "utils.h"
 #include "dbusmanager.h"
     
diff --git a/application/utils.h b/application/utils.h
--- a/application/utils.h
+++ b/application/utils.h
@@ -40,6 +40,7 @@ class Utils : public QObject
         explicit Utils(QObject *parent = nullptr);
         ~Utils();
     
+    static QString homePath; // 提供全局安全的家目录访问
         static QString getCurrentUserName();
         static bool isValidUserName(const QString &userName);
         static bool isCoredumpctlExist();

@GongHeng2017

Copy link
Copy Markdown
Contributor Author

/forcemerge

@deepin-bot

deepin-bot Bot commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

This pr force merged! (status: unstable)

@deepin-bot
deepin-bot Bot merged commit e903de8 into linuxdeepin:release/eagle Jun 29, 2026
22 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants