!36 [sync] PR-35: fix coredump of ukui-power-manager
From: @openeuler-sync-bot Reviewed-by: @dou33 Signed-off-by: @dou33
This commit is contained in:
commit
0e3fb4d7d7
143
0001-fix-coredump-of-ukui-power-manager.patch
Normal file
143
0001-fix-coredump-of-ukui-power-manager.patch
Normal file
@ -0,0 +1,143 @@
|
||||
From 2e9aa0e924c803a1ac3a1080e52bed8cae8095d3 Mon Sep 17 00:00:00 2001
|
||||
From: peijiankang <peijiankang@kylinos.cn>
|
||||
Date: Sun, 11 Jun 2023 15:59:52 +0800
|
||||
Subject: [PATCH] fix coredump of ukui-power-manager
|
||||
|
||||
---
|
||||
ukui-power-manager-tray/powertray.cpp | 20 +++++++++---
|
||||
ukui-power-manager-tray/powerwindow.cpp | 43 ++++++++++++-------------
|
||||
ukui-power-manager-tray/powerwindow.h | 4 +--
|
||||
3 files changed, 39 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/ukui-power-manager-tray/powertray.cpp b/ukui-power-manager-tray/powertray.cpp
|
||||
index 6a36c06..75f986e 100644
|
||||
--- a/ukui-power-manager-tray/powertray.cpp
|
||||
+++ b/ukui-power-manager-tray/powertray.cpp
|
||||
@@ -147,8 +147,20 @@ void PowerTray::set_preference_func()
|
||||
|
||||
PowerTray::~PowerTray()
|
||||
{
|
||||
- delete powerWindow;
|
||||
- delete menu;
|
||||
- delete trayIcon;
|
||||
- delete iface;
|
||||
+ if (nullptr != powerWindow) {
|
||||
+ delete powerWindow;
|
||||
+ powerWindow = nullptr;
|
||||
+ }
|
||||
+ if (nullptr != menu) {
|
||||
+ delete menu;
|
||||
+ menu = nullptr;
|
||||
+ }
|
||||
+ if (nullptr != trayIcon) {
|
||||
+ delete trayIcon;
|
||||
+ trayIcon = nullptr;
|
||||
+ }
|
||||
+ if (nullptr != iface) {
|
||||
+ delete iface;
|
||||
+ iface = nullptr;
|
||||
+ }
|
||||
}
|
||||
diff --git a/ukui-power-manager-tray/powerwindow.cpp b/ukui-power-manager-tray/powerwindow.cpp
|
||||
index 0b732b2..cf68795 100755
|
||||
--- a/ukui-power-manager-tray/powerwindow.cpp
|
||||
+++ b/ukui-power-manager-tray/powerwindow.cpp
|
||||
@@ -67,7 +67,7 @@ powerwindow::powerwindow(QWidget *parent) : QWidget(parent)
|
||||
setWindowProperty(); //设置窗口属性
|
||||
initUI(); //初始化UI
|
||||
initgsetting();
|
||||
- set_window_position(); //设置出现在屏幕的位置以及大小
|
||||
+ //set_window_position(); //设置出现在屏幕的位置以及大小
|
||||
watchTranspartency();
|
||||
|
||||
//监听屏幕改变的信号
|
||||
@@ -82,16 +82,15 @@ powerwindow::powerwindow(QWidget *parent) : QWidget(parent)
|
||||
|
||||
powerwindow::~powerwindow()
|
||||
{
|
||||
- delete m_pmainlayout;
|
||||
- delete m_firstlayout;
|
||||
- delete lastlayout;
|
||||
- delete m_firstwidget;
|
||||
- delete iconButton;
|
||||
- delete percentageLabel;
|
||||
- delete powerStateLabel;
|
||||
- delete powerTimeToEmpty;
|
||||
- delete settingLabel;
|
||||
- delete transparency_gsettings;
|
||||
+ if (nullptr != transparency_gsettings) {
|
||||
+ delete transparency_gsettings;
|
||||
+ transparency_gsettings = nullptr;
|
||||
+ }
|
||||
+ if (nullptr != percentageLabel) {
|
||||
+ delete percentageLabel;
|
||||
+ percentageLabel = nullptr;
|
||||
+ }
|
||||
+
|
||||
}
|
||||
|
||||
void powerwindow::setWindowProperty()
|
||||
@@ -115,27 +114,27 @@ void powerwindow::initUI()
|
||||
hints.decorations = MWM_DECOR_BORDER;
|
||||
XAtomHelper::getInstance()->setWindowMotifHint(this->winId(), hints);
|
||||
|
||||
- m_pmainlayout = new QVBoxLayout();
|
||||
+ m_pmainlayout = new QVBoxLayout(this);
|
||||
m_firstlayout = new QHBoxLayout(this);
|
||||
m_firstlayout->setContentsMargins(0, 0, 0, 0);
|
||||
- m_toplayout = new QHBoxLayout();
|
||||
- lastlayout = new QHBoxLayout();
|
||||
- m_statelayout = new QHBoxLayout();
|
||||
+ m_toplayout = new QHBoxLayout(this);
|
||||
+ lastlayout = new QHBoxLayout(this);
|
||||
+ m_statelayout = new QHBoxLayout(this);
|
||||
|
||||
- m_firstwidget = new QWidget();
|
||||
- m_topwidget = new QWidget();
|
||||
- lastWidget = new QWidget();
|
||||
- m_statewidget = new QWidget();
|
||||
+ m_firstwidget = new QWidget(this);
|
||||
+ m_topwidget = new QWidget(this);
|
||||
+ lastWidget = new QWidget(this);
|
||||
+ m_statewidget = new QWidget(this);
|
||||
|
||||
- iconButton = new BatteryIcon();
|
||||
+ iconButton = new BatteryIcon(this);
|
||||
|
||||
percentageLabel = new PercentageLabel();
|
||||
|
||||
- powerStateLabel = new QLabel();
|
||||
+ powerStateLabel = new QLabel(this);
|
||||
powerStateLabel->setText(tr("Charging"));
|
||||
powerStateLabel->setVisible(false);
|
||||
|
||||
- powerTimeToEmpty = new QLabel();
|
||||
+ powerTimeToEmpty = new QLabel(this);
|
||||
powerTimeToEmpty->setVisible(true);
|
||||
|
||||
m_segmentationLine_1 = new Divider(this);
|
||||
diff --git a/ukui-power-manager-tray/powerwindow.h b/ukui-power-manager-tray/powerwindow.h
|
||||
index fffe943..84536ab 100755
|
||||
--- a/ukui-power-manager-tray/powerwindow.h
|
||||
+++ b/ukui-power-manager-tray/powerwindow.h
|
||||
@@ -92,7 +92,7 @@ public:
|
||||
QWidget *m_statewidget;
|
||||
|
||||
BatteryIcon *iconButton;
|
||||
- PercentageLabel *percentageLabel;
|
||||
+ PercentageLabel *percentageLabel = nullptr;
|
||||
QLabel *powerStateLabel;
|
||||
QLabel *powerTimeToEmpty;
|
||||
QLabel *toplabel;
|
||||
@@ -123,7 +123,7 @@ private :
|
||||
int m_sysFontSize;
|
||||
int m_batteryState;
|
||||
double transparency;
|
||||
- QGSettings *transparency_gsettings;
|
||||
+ QGSettings *transparency_gsettings = nullptr;
|
||||
QDBusInterface *m_notifyInterface;
|
||||
QGSettings *m_PowerManagerGsettings;
|
||||
enum powerPolicy
|
||||
--
|
||||
2.33.0
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
Name: ukui-power-manager
|
||||
Version: 3.1.2
|
||||
Release: 4
|
||||
Release: 5
|
||||
Summary: power management tool for the UKUI desktop
|
||||
License: GPL-3+
|
||||
URL: http://www.ukui.org
|
||||
Source0: %{name}-%{version}.tar.gz
|
||||
|
||||
Patch01: ukui-power-manager-3.1.2-fix-default-power-setting.patch
|
||||
|
||||
Patch02: 0001-fix-coredump-of-ukui-power-manager.patch
|
||||
BuildRequires: qt5-qtbase-devel, qt5-qttools-devel, ukui-interface, glib2-devel, upower-devel, libX11-devel, libXext-devel, perl-XML-Parser, libXrandr-devel, pkg-config, gsettings-qt-devel, kf5-kwindowsystem-devel, qt5-qtx11extras-devel libkysdk-qtwidgets-devel chrpath
|
||||
|
||||
Requires: dbus-x11,systemd,upower
|
||||
@ -73,6 +73,9 @@ glib-compile-schemas /usr/share/glib-2.0/schemas/ &> /dev/null ||:
|
||||
%{_datadir}/man/*
|
||||
|
||||
%changelog
|
||||
* Sun Jun 11 2023 peijiankang <peijiankang@kylinos.cn> - 3.1.2-5
|
||||
- fix coredump of ukui-power-manager
|
||||
|
||||
* Wed Mar 01 2023 peijiankang <peijiankang@kylinos.cn> - 3.1.2-4
|
||||
- remove rpath of ukui-power-manager-tray
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user