fix class member initialization order problems

Signed-off-by: 侯红勋 <houhongxun@kylinos.cn>
This commit is contained in:
侯红勋 2024-05-08 09:16:43 +08:00
parent 5456451900
commit da880072dc
2 changed files with 92 additions and 6 deletions

View File

@ -0,0 +1,83 @@
From 8df4ddf1e025693144f40db6aceaa0420c1a00ae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E4=BE=AF=E7=BA=A2=E5=8B=8B?= <houhongxun@kylinos.cn>
Date: Tue, 30 Apr 2024 15:39:30 +0800
Subject: [PATCH] fix initialization order problem of class members
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: 侯红勋 <houhongxun@kylinos.cn>
---
tools/mainwindow.cpp | 2 +-
ukui-session/ukuismclient.h | 2 +-
ukui-session/ukuismserver.h | 7 ++++---
3 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/tools/mainwindow.cpp b/tools/mainwindow.cpp
index eb5686f..a1b82b3 100644
--- a/tools/mainwindow.cpp
+++ b/tools/mainwindow.cpp
@@ -105,9 +105,9 @@ QString getUserName(QFile *a)
}
MainWindow::MainWindow(bool a, bool b, QWidget *parent) : QMainWindow(parent)
+ , timer(new QTimer())
, ui(new Ui::MainWindow)
, m_power(new UkuiPower(this))
- , timer(new QTimer())
, xEventMonitor(new XEventMonitor(this))
{
const QByteArray bid(BACKGROUND_SETTINGS);
diff --git a/ukui-session/ukuismclient.h b/ukui-session/ukuismclient.h
index dd9eab4..9b9469d 100644
--- a/ukui-session/ukuismclient.h
+++ b/ukui-session/ukuismclient.h
@@ -60,8 +60,8 @@ public:
bool m_wasPhase2;
private:
- const char *m_id;
SmsConn m_smsConn;
+ const char *m_id;
};
#endif // UKUISMCLIENT_H
diff --git a/ukui-session/ukuismserver.h b/ukui-session/ukuismserver.h
index 84d679c..843d67c 100644
--- a/ukui-session/ukuismserver.h
+++ b/ukui-session/ukuismserver.h
@@ -121,27 +121,28 @@ private:
LaunchingWM, Restoring,
Shutdown, Killing, KillingWM, WaitingForKNotify, // shutdown
};
+
+ OrgKdeKWinSessionInterface *m_kwinInterface;
State m_state;
bool clean;
bool m_saveSession;
int m_wmPhase1WaitingCount;
+ UKUISMClient *m_clientInteracting;
int m_appsToStart;
int m_appRestored;
int m_saveType;
KProcess *m_wmProcess;
- OrgKdeKWinSessionInterface *m_kwinInterface;
- UKUISMClient *m_clientInteracting;
QList<QStringList> m_wmStartCommands;
QList<UKUISMListener*> m_listener;
QList<UKUISMClient*> m_clients;
QTimer m_restoreTimer;
QTimer m_protectionTimer;
- QString m_wm;
QString m_lastIdRestore;
QString m_sessionGroup;
+ QString m_wm;
QStringList m_wmCommands;
QTimer m_systemdLogoutTimer;
--
2.43.0

View File

@ -1,6 +1,6 @@
Name: ukui-session-manager
Version: 3.1.0
Release: 6
Release: 7
Summary: Session manager of the UKUI desktop environment
License: GPL-2.0-or-later and GPL-3.0-or-later and LGPL-2.0-or-later
URL: http://www.ukui.org
@ -8,6 +8,7 @@ Source0: %{name}-%{version}.tar.gz
Patch02: ukui-session-manager-3.1.0-kylin-fix-ukui-kwin-x11-coredump.patch
Patch03: add-switchuser-no-limits-ukui-session.patch
Patch05: remove-ukui-settings-daemon-quit.patch
Patch06: 0001-fix-initialization-order-problem-of-class-members.patch
BuildRequires: cmake
BuildRequires: libX11-devel
@ -50,9 +51,10 @@ Provides: x-session-manager
%prep
%setup -q
%patch02 -p1
%patch03 -p1
%patch05 -p1
%patch 2 -p1
%patch 3 -p1
%patch 5 -p1
%patch 6 -p1
%build
mkdir cmake-build
@ -80,10 +82,11 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/*
%{_prefix}/bin/ukui-session
%{_prefix}/bin/ukui-session-tools
%{_datadir}/man/man1/ukui-session.1.gz
%{_datadir}/man/man1/ukui-session-tools.1.gz
%changelog
* Tue Apr 30 2024 houhongxun <houhongxun@kylinos.cn> - 3.1.0-7
- fix class member initialization order problems
* Thu Sep 21 2023 peijiankang <peijiankang@kylinos.cn> - 3.1.0-6
- Type:bugfix
- ID :NA