Summary: | Dolphin crashed when accessing to "Configure Dolphin" | ||
---|---|---|---|
Product: | [Applications] dolphin | Reporter: | Gauthier POGAM--LE MONTAGNER <gplm+kde> |
Component: | general | Assignee: | Dolphin Bug Assignee <dolphin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | 812682558, a.skembris, alessandro.tassi, bernie, dmitry.olyenyov, fabian, finex, frank78ac, jessetalavera, mymailclone, niktischenko, ponury.pastuch, qneverless, rajat.citrix, rapiteanu.catalin, sdicke, walmartshopper, wbauer1, wulf.richartz |
Priority: | NOR | Keywords: | drkonqi |
Version: | 16.12.2 | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
See Also: | https://bugs.kde.org/show_bug.cgi?id=357976 | ||
Latest Commit: | http://commits.kde.org/dolphin/ddc050f23596493e8debd2dfd523fd572c098d63 | Version Fixed In: | 15.12.2 |
Sentry Crash Report: |
Description
Gauthier POGAM--LE MONTAGNER
2015-10-29 12:58:19 UTC
I was able to reproduce this, but not consistently. Sometimes it crashes several times in a row when trying to open the settings. Sometimes it works several times in a row before crashing. I am using Dolphin 15.08.2, frameworks 5.15.0, and qt 5.5.1 on Arch Linux. (In reply to walmartshopper from comment #1) > I was able to reproduce this, but not consistently. Sometimes it crashes > several times in a row when trying to open the settings. Sometimes it works > several times in a row before crashing. > > I am using Dolphin 15.08.2, frameworks 5.15.0, and qt 5.5.1 on Arch Linux. I can confirm this too, on openSUSE 13.2 with Dolphin 15.08.2, KF 5.15.0, and Qt 5.5.1. And we have a downstream bug report here too: https://bugzilla.opensuse.org/show_bug.cgi?id=952460 PS: It's not related to split-view at all. The exact reproduction sequence: - click on "Control" - hover the mouse over any submenu in the same group as "Configure Dolphin..." (i.e. "Go to", "Extras", or "Help") until it appears (don't select anything) - as long as the submenu is still displayed, move to "Configure Dolphin..." and select it Dolphin will reliably crash. If you select "Configure Dolphin..." while no other submenu is open, it doesn't crash. *** Bug 355531 has been marked as a duplicate of this bug. *** (In reply to Wolfgang Bauer from comment #3) Thanks for the detailed instructions, but apparently, I am unable to open a sub-menu by hovering it and then click "Configure Dolphin..." quickly enough. Every time I try it, the sub-menu closes before I can select "Configure Dolphin...". The backtrace looks like it might be a Qt issue. There aren't any frames from Dolphin or KDE Frameworks. (In reply to Frank Reininghaus from comment #5) > Thanks for the detailed instructions, but apparently, I am unable to open a > sub-menu by hovering it and then click "Configure Dolphin..." quickly > enough. Every time I try it, the sub-menu closes before I can select > "Configure Dolphin...". Hm, it is quite easily reproducible here, with every widget style I tried (even Fusion). Might depend on your system though, I suppose... Trying with the "Help" submenu might be the easiest way to reproduce it, because it is located just below the "Configure Dolphin..." entry. But just to be clear: this only happens if dolphins menu bar is disabled, i.e. by using the menu button ("Control") in the toolbar. It doesn't seem to happen with "normal" menus though, i.e. I cannot reproduce it with dolphin either if I enable "Show Menubar". But then, there's no submenu either that could still be open... > The backtrace looks like it might be a Qt issue. There aren't any frames > from Dolphin or KDE Frameworks. Right, I noticed that as well. But still, dolphin might do something wrong when setting up that menu, or when opening the settings dialog. I wasn't able to reproduce such a crash in a different application upto now. But then, most of them do not provide such a menu button in the tool bar in the first place... PS: I just tried with a Kubuntu 15.10 LiveCD (Dolphin 15.08.2, Frameworks 5.15.0, Qt 5.4.2) and cannot reproduce the crash there (it is not even possible to click on "Configure Dolphin" while another submenu is open). So it might be a problem with Qt 5.5 only... *** Bug 356288 has been marked as a duplicate of this bug. *** Just updated archlinux with latest KDE packages (uninstalled old KDE and installed new Plasma). I've created a new clean user account and the first time I've tried to open Dolphin settings it crashed with the same backtrace. P.S: I've experienced similar crashes on almost every KDE application when I've started the settings for the first time. I'm seeing the same behaviour with Dolphin version 5.12 and Frameworks 5.17.0. The steps to reproduce this were: 1. Open the "Control" menu. 2. Hover the mouse on "Help" until the submenu is displayed. 3. Quickly while the "Help" submenu is still displayed select the "Configure Dolphin" submenu (that is located just above). Dolphin does indeed do some weird stuff with its Control button: in DolphinMainWindow::updateControlMenu: // All actions get cleared by QMenu::clear(). The sub-menus are deleted // by connecting to the aboutToHide() signal from the parent-menu. connect(menu, &QMenu::aboutToHide, helpMenu, &QMenu::deleteLater); Is this even necessary? (In reply to Fabian Vogt from comment #11) > Dolphin does indeed do some weird stuff with its Control button: > in DolphinMainWindow::updateControlMenu: > > // All actions get cleared by QMenu::clear(). The sub-menus are deleted > // by connecting to the aboutToHide() signal from the parent-menu. > connect(menu, &QMenu::aboutToHide, helpMenu, &QMenu::deleteLater); This seems to be the problem indeed. Removing those connects does fix the crashes for me... Good investigation, Fabian and Wolfgang! It seems that these connects were added in https://quickgit.kde.org/?p=dolphin.git&a=commit&h=2baa9ec45a3e7e169e73ee74c74c0954702ab882 The commit message doesn't tell much about why they were added though. The control menu still works fine for me after opening and closing it multiple times (note that updateControlMenu is called every time the menu is opened), so they can probably be removed. I did some more tests and verified that the proposed change does not cause any memory leaks. I created a review request to make sure that others can give feedback, and this bug can hopefully be fixed soon (however, it's too late for 15.12.1 already, I think): https://git.reviewboard.kde.org/r/126693/ Thanks again to Fabian and Wolfgang! I have just signed in kde bugtrace site to inform about this exact problem but it looks like you are finding the solution. My system is Arch Linux - Linux 4.3.3-2-ARCH x86_64, Qt Version: 5.5.1 with KDE Plasma 5.5.3-2 and I have the same identical problem. So thanks a lot. Git commit ddc050f23596493e8debd2dfd523fd572c098d63 by Frank Reininghaus. Committed on 14/01/2016 at 19:36. Pushed by freininghaus into branch 'Applications/15.12'. Do not delete sub menus of the control menu explicitly This is not necessary because the sub menus are children of the main menu, such that they are deleted together with the other actions by QMenu::clear(). This prevents a crash that can happen if a sub menu is open while another menu action is clicked. Thanks to Fabian Vogt and Wolfgang Bauer for investigating this issue! FIXED-IN: 15.12.2 REVIEW: 126693 M +2 -5 src/dolphinmainwindow.cpp http://commits.kde.org/dolphin/ddc050f23596493e8debd2dfd523fd572c098d63 *** Bug 357976 has been marked as a duplicate of this bug. *** *** Bug 358357 has been marked as a duplicate of this bug. *** *** Bug 357712 has been marked as a duplicate of this bug. *** *** Bug 358481 has been marked as a duplicate of this bug. *** *** Bug 358737 has been marked as a duplicate of this bug. *** I had the same issue. I had old 4.8 kde installed from Gentoo. Recently I've switched to Fedora while keeping my home directory. Dolphin was crashing every time I try to open "Configure Dolphin". After turning on and off "Preview" button problem had disappeared. *** Bug 360452 has been marked as a duplicate of this bug. *** *** Bug 360670 has been marked as a duplicate of this bug. *** |