2023-08-28 20:23:08 +08:00
|
|
|
|
From ae26631a045b39aeb760ada4c1cfd98783599fda Mon Sep 17 00:00:00 2001
|
2023-08-25 13:55:13 +08:00
|
|
|
|
From: yuanxing <yuanxing@kylinsec.com.cn>
|
|
|
|
|
|
Date: Fri, 25 Aug 2023 13:47:13 +0800
|
2023-08-28 20:23:08 +08:00
|
|
|
|
Subject: [PATCH 4/5] fix(wallpaper):don't call xmlWriter if system background
|
|
|
|
|
|
xml not exists to solve segmentation fault
|
2023-08-25 13:55:13 +08:00
|
|
|
|
MIME-Version: 1.0
|
|
|
|
|
|
Content-Type: text/plain; charset=UTF-8
|
|
|
|
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
|
|
|
|
|
|
|
|
- 当系统系统壁纸xml文件不存在时,不调用xmlWriter函数,防止段错误
|
|
|
|
|
|
---
|
|
|
|
|
|
.../wallpaper/widget/xml-management/xml-management.cpp | 9 +++++++--
|
|
|
|
|
|
1 file changed, 7 insertions(+), 2 deletions(-)
|
|
|
|
|
|
|
|
|
|
|
|
diff --git a/plugins/appearance/src/pages/wallpaper/widget/xml-management/xml-management.cpp b/plugins/appearance/src/pages/wallpaper/widget/xml-management/xml-management.cpp
|
|
|
|
|
|
index 8d174ab..385eb9e 100644
|
|
|
|
|
|
--- a/plugins/appearance/src/pages/wallpaper/widget/xml-management/xml-management.cpp
|
|
|
|
|
|
+++ b/plugins/appearance/src/pages/wallpaper/widget/xml-management/xml-management.cpp
|
|
|
|
|
|
@@ -38,8 +38,8 @@ void XmlManagement::loadXmlFiles()
|
|
|
|
|
|
if (!file.exists())
|
|
|
|
|
|
{
|
|
|
|
|
|
KLOG_DEBUG() << "local xml file no exist";
|
|
|
|
|
|
- xmlReader(SYSTEM_WALLPAPER_FILE);
|
|
|
|
|
|
- xmlWriter();
|
|
|
|
|
|
+ if (xmlReader(SYSTEM_WALLPAPER_FILE))
|
|
|
|
|
|
+ xmlWriter();
|
|
|
|
|
|
}
|
|
|
|
|
|
xmlReader(localFile);
|
|
|
|
|
|
}
|
|
|
|
|
|
@@ -209,6 +209,11 @@ void XmlManagement::xmlUpdate(QList<QMap<QString, QString>> updateList)
|
|
|
|
|
|
{
|
|
|
|
|
|
QString localFile = QString("%1/%2").arg(QDir::homePath()).arg(LOCAL_WALLPAPER_FILE);
|
|
|
|
|
|
QFile file(localFile);
|
|
|
|
|
|
+ if (!file.exists())
|
|
|
|
|
|
+ {
|
|
|
|
|
|
+ KLOG_DEBUG() << localFile << " doesn't exists!";
|
|
|
|
|
|
+ return;
|
|
|
|
|
|
+ }
|
|
|
|
|
|
if (!file.open(QFile::WriteOnly | QFile::Text))
|
|
|
|
|
|
{
|
|
|
|
|
|
KLOG_DEBUG() << "open " << localFile << " failed!";
|
|
|
|
|
|
--
|
2023-08-28 20:23:08 +08:00
|
|
|
|
2.33.0
|
2023-08-25 13:55:13 +08:00
|
|
|
|
|