Hello community,

here is the log from the commit of package akonadi-server for openSUSE:Factory 
checked in at 2020-09-09 17:51:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/akonadi-server (Old)
 and      /work/SRC/openSUSE:Factory/.akonadi-server.new.3399 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "akonadi-server"

Wed Sep  9 17:51:22 2020 rev:74 rq:831705 version:20.08.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/akonadi-server/akonadi-server.changes    
2020-08-18 11:55:43.271272392 +0200
+++ /work/SRC/openSUSE:Factory/.akonadi-server.new.3399/akonadi-server.changes  
2020-09-09 17:53:33.882749408 +0200
@@ -1,0 +2,15 @@
+Wed Sep  2 11:40:13 UTC 2020 - Christophe Giboudeaux <christo...@krop.fr>
+
+- Add upstream patch to fix crashes:
+  * 0001-AgentBase-Fix-crash-in-setOnline.patch
+
+-------------------------------------------------------------------
+Tue Sep  1 20:48:47 UTC 2020 - Luca Beltrame <lbeltr...@kde.org>
+
+- Update to 20.08.1
+  * New bugfix release
+  * For more details please see:
+  * https://kde.org/announcements/releases/2020-09-apps-update
+- No code change since 20.08.0
+
+-------------------------------------------------------------------

Old:
----
  akonadi-20.08.0.tar.xz
  akonadi-20.08.0.tar.xz.sig

New:
----
  0001-AgentBase-Fix-crash-in-setOnline.patch
  akonadi-20.08.1.tar.xz
  akonadi-20.08.1.tar.xz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ akonadi-server.spec ++++++
--- /var/tmp/diff_new_pack.aQ2Su3/_old  2020-09-09 17:53:35.654750848 +0200
+++ /var/tmp/diff_new_pack.aQ2Su3/_new  2020-09-09 17:53:35.654750848 +0200
@@ -22,7 +22,7 @@
 %{!?_kapp_version: %define _kapp_version %(echo %{version}| awk -F. '{print 
$1"."$2}')}
 %bcond_without lang
 Name:           akonadi-server
-Version:        20.08.0
+Version:        20.08.1
 Release:        0
 Summary:        PIM Storage Service
 License:        LGPL-2.1-or-later
@@ -30,6 +30,7 @@
 URL:            https://akonadi-project.org
 Source:         
https://download.kde.org/stable/release-service/%{version}/src/%{rname}-%{version}.tar.xz
 Source99:       akonadi-server-rpmlintrc
+Patch0:         0001-AgentBase-Fix-crash-in-setOnline.patch
 BuildRequires:  extra-cmake-modules >= %{kf5_version}
 BuildRequires:  kf5-filesystem
 BuildRequires:  libQt5Sql-private-headers-devel
@@ -166,7 +167,7 @@
 %lang_package
 
 %prep
-%setup -q -n %{rname}-%{version}
+%autosetup -p1 -n %{rname}-%{version}
 
 %build
   %cmake_kf5 -d build -- -DINSTALL_QSQLITE_IN_QT_PREFIX=TRUE 
-DQT_PLUGINS_DIR=%{_kf5_plugindir} -DINSTALL_APPARMOR=FALSE

++++++ 0001-AgentBase-Fix-crash-in-setOnline.patch ++++++
>From 66d1135d127331fb3a2a7e047b0577d7e67d3dc2 Mon Sep 17 00:00:00 2001
From: Ahmad Samir <a.samir...@gmail.com>
Date: Wed, 2 Sep 2020 10:20:37 +0000
Subject: [PATCH] AgentBase: Fix crash in setOnline

When setOnline tries to access the mSettings member after the latter has
been deleted we get a crash; mSettings is deleted in quit() or cleanup(),
therefore it looks like a race condition: the Agent is about to quit, but
some other code calls setOnline leading to a crash. It looks like this can
happen in more than one way, e.g. via a dbus call (from AgentInstance), or
via a sub-class of AgentBase calling setOnline directly. Use a bool member
var, modelled after how AgentInstance uses a similar logic.

BUG: 418844
(cherry picked from commit 53574eb6fccc8f6a03dcea6c1ca1aa02dd895209)
---
 src/agentbase/agentbase.cpp | 8 ++++++++
 src/agentbase/agentbase_p.h | 2 ++
 2 files changed, 10 insertions(+)

diff --git a/src/agentbase/agentbase.cpp b/src/agentbase/agentbase.cpp
index 94d8ccc02..025f90c69 100644
--- a/src/agentbase/agentbase.cpp
+++ b/src/agentbase/agentbase.cpp
@@ -333,6 +333,7 @@ AgentBasePrivate::AgentBasePrivate(AgentBase *parent)
     , mNeedsNetwork(false)
     , mOnline(false)
     , mDesiredOnlineState(false)
+    , mPendingQuit(false)
     , mSettings(nullptr)
     , mChangeRecorder(nullptr)
     , mTracer(nullptr)
@@ -1006,6 +1007,11 @@ void AgentBase::setNeedsNetwork(bool needsNetwork)
 void AgentBase::setOnline(bool state)
 {
     Q_D(AgentBase);
+
+    if (d->mPendingQuit) {
+        return;
+    }
+
     d->mDesiredOnlineState = state;
     d->mSettings->setValue(QStringLiteral("Agent/DesiredOnlineState"), state);
     setOnlineInternal(state);
@@ -1126,6 +1132,8 @@ void AgentBase::quit()
 
 void AgentBase::aboutToQuit()
 {
+    Q_D(AgentBase);
+    d->mPendingQuit = true;
 }
 
 void AgentBase::cleanup()
diff --git a/src/agentbase/agentbase_p.h b/src/agentbase/agentbase_p.h
index a70846ce9..2353e7281 100644
--- a/src/agentbase/agentbase_p.h
+++ b/src/agentbase/agentbase_p.h
@@ -88,6 +88,8 @@ public:
     bool mOnline;
     bool mDesiredOnlineState;
 
+    bool mPendingQuit;
+
     QSettings *mSettings = nullptr;
 
     ChangeRecorder *mChangeRecorder = nullptr;
-- 
2.28.0

++++++ akonadi-20.08.0.tar.xz -> akonadi-20.08.1.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akonadi-20.08.0/CMakeLists.txt 
new/akonadi-20.08.1/CMakeLists.txt
--- old/akonadi-20.08.0/CMakeLists.txt  2020-08-07 09:07:21.000000000 +0200
+++ new/akonadi-20.08.1/CMakeLists.txt  2020-09-01 08:33:15.000000000 +0200
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.5)
 
-set(PIM_VERSION "5.15.0")
+set(PIM_VERSION "5.15.1")
 project(Akonadi VERSION ${PIM_VERSION})
 
 set(CMAKE_CXX_STANDARD 17)
@@ -36,7 +36,7 @@
 include(AkonadiMacros)
 
 set(QT_REQUIRED_VERSION "5.13.0")
-set(RELEASE_SERVICE_VERSION "20.08.0")
+set(RELEASE_SERVICE_VERSION "20.08.1")
 set(AKONADI_FULL_VERSION "${PIM_VERSION} (${RELEASE_SERVICE_VERSION})")
 
 configure_file(akonadifull-version.h.cmake 
${CMAKE_CURRENT_BINARY_DIR}/akonadifull-version.h @ONLY)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akonadi-20.08.0/po/zh_CN/akonadi_knut_resource.po 
new/akonadi-20.08.1/po/zh_CN/akonadi_knut_resource.po
--- old/akonadi-20.08.0/po/zh_CN/akonadi_knut_resource.po       2020-08-07 
09:07:21.000000000 +0200
+++ new/akonadi-20.08.1/po/zh_CN/akonadi_knut_resource.po       2020-09-01 
08:33:15.000000000 +0200
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-07-13 07:46+0200\n"
-"PO-Revision-Date: 2020-07-31 15:03\n"
+"PO-Revision-Date: 2020-08-12 20:42\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akonadi-20.08.0/po/zh_CN/libakonadi5.po 
new/akonadi-20.08.1/po/zh_CN/libakonadi5.po
--- old/akonadi-20.08.0/po/zh_CN/libakonadi5.po 2020-08-07 09:07:21.000000000 
+0200
+++ new/akonadi-20.08.1/po/zh_CN/libakonadi5.po 2020-09-01 08:33:15.000000000 
+0200
@@ -8,7 +8,7 @@
 "Project-Id-Version: kdeorg\n"
 "Report-Msgid-Bugs-To: https://bugs.kde.org\n";
 "POT-Creation-Date: 2020-07-13 07:46+0200\n"
-"PO-Revision-Date: 2020-07-31 15:03\n"
+"PO-Revision-Date: 2020-08-12 20:42\n"
 "Last-Translator: \n"
 "Language-Team: Chinese Simplified\n"
 "Language: zh_CN\n"



Reply via email to