Skip to content

[0171] 修复 Qt SVG 图标加载中的内存泄漏#3528

Open
da-liii wants to merge 2 commits into
mainfrom
da/0171/memory
Open

[0171] 修复 Qt SVG 图标加载中的内存泄漏#3528
da-liii wants to merge 2 commits into
mainfrom
da/0171/memory

Conversation

@da-liii
Copy link
Copy Markdown
Contributor

@da-liii da-liii commented May 27, 2026

摘要

修复 qt_load_svg_icon 函数中的内存泄漏问题。

问题描述

src/Plugins/Qt/qt_picture.cppqt_load_svg_icon 函数中,加载 SVG 图标时通过 new QImage 分配了一个临时 QImage 对象用于渲染,但在将图像转换为 QPixmap 并返回之前,没有释放该临时对象,导致每次加载 SVG 图标都会泄漏内存。

修复方式

return icon; 之前添加 delete pm; 语句,释放临时分配的 QImage

测试

  • 代码审查确认修复位置正确

🤖 Generated with Claude Code

da-liii and others added 2 commits May 27, 2026 20:24
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
在 qt_load_svg_icon 函数中,new QImage 分配的临时图像在转换为 QPixmap 后未释放,导致每次加载 SVG 图标都会泄漏内存。在 return 前添加 delete pm 修复此问题。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
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.

1 participant