summaryrefslogtreecommitdiff
blob: 67eab1d6315dfda8c8ac74231e483a25ff6b2329 (plain)
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