1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
From b61086cfece0d0f11ecfe9c3309697997cada201 Mon Sep 17 00:00:00 2001
From: Stefano Crocco <stefano.crocco@alice.it>
Date: Tue, 14 Apr 2020 10:21:48 +0200
Subject: [PATCH] Fix crash due to changes in KBookmarkMenu
Summary:
Since version 5.69, KBookmarkMenu doesn't automatically create an action
collection. This causes Konqueror to crash when going on a submenu in
the Bookmarks menu. To avoid it, manually create the action collection.
Also, avoid calling the version of KBookmarkMenu construction which
takes a KActionCollection, as it's deprecated.
Test Plan:
Open the bookmarks menu and hover with the mouse on a submenu. Check
that it crashes. Do the same after this change and check it doesn't crash
anymore.
Reviewers: dfaure, nicolasfella
Reviewed By: dfaure, nicolasfella
Subscribers: arojas, poboiko
Differential Revision: https://phabricator.kde.org/D28789
---
src/konqbookmarkmenu.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/konqbookmarkmenu.h b/src/konqbookmarkmenu.h
index 9ff4c0f55..d47960f7b 100644
--- a/src/konqbookmarkmenu.h
+++ b/src/konqbookmarkmenu.h
@@ -26,6 +26,7 @@
#include "kbookmarkcontextmenu.h"
#include <KActionCollection>
+#include <kbookmarks_version.h>
namespace Konqueror { // to avoid clashing with KF5::Bookmarks which had a KonqBookmarkMenu class. Remove once using KF6.
@@ -61,7 +62,10 @@ public:
KonqBookmarkMenu(KBookmarkManager *mgr, KBookmarkOwner *owner, KBookmarkActionMenu *parentMenu, QString parentAddress)
: KBookmarkMenu(mgr, owner, parentMenu->menu(), parentAddress)
{
+//KBookmarkMenu doesn't create an action collection only in version 5.69.0
+#if KBOOKMARKS_VERSION == QT_VERSION_CHECK(5, 69, 0)
m_actionCollection = new KActionCollection(this);
+#endif
}
protected:
--
2.26.2
|