| Summary: | Invalid write after KXMLGUIFactory::removeClient when menu not fully closed | ||
|---|---|---|---|
| Product: | [Frameworks and Libraries] frameworks-kxmlgui | Reporter: | wojnilowicz <lukasz.wojnilowicz> |
| Component: | general | Assignee: | kdelibs bugs <kdelibs-bugs-null> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | normal | CC: | aacid, christoph, maris.kde |
| Priority: | NOR | Keywords: | testcase |
| Version First Reported In: | 5.103.0 | ||
| Target Milestone: | --- | ||
| Platform: | Fedora RPMs | ||
| OS: | Linux | ||
| See Also: | https://bugs.kde.org/show_bug.cgi?id=460634 | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: |
Test case for bug #460634
valgrind output while clicking on find another valgrind run while clicking on find in lokalize gdb output while clicking on find and then closing window |
||
|
Description
wojnilowicz
2023-02-19 09:25:57 UTC
This is not a memory leak. A memory leak is when you forget to delete memory, there's no memory being forgotten to be deleted here. In my opinion this is a bug of the application, it is removing things under Qt's feet, so Qt crashes Ok, I corrected bug's subject, thanks for the clarification. In general case all can be pointed to the application. On the other hand if the application would have to create menus itself then it would probably use deleteLater on them but instead it delegates this task to KXmlGuiWindow which by description at https://api.kde.org/frameworks/kxmlgui/html/classKXmlGuiWindow.html#details should serve this purpose. In the mean time it causes easy to reproduce crashes in Lokalize (I lost unsaved changes when decided to use search functionality in Lokalize :-( Māris which Lokalize version are you using and what's the backtrace of the crash? Created attachment 165240 [details]
valgrind output while clicking on find
It can take a few times to click Edit->Find then close search and replace tab (usually errors on the second "find").
Created attachment 165241 [details]
another valgrind run while clicking on find in lokalize
Created attachment 165243 [details]
gdb output while clicking on find and then closing window
gdb turned out to be less helpful as backtrace leads to different sources indicating on a potential prior memory corruption. Still, usually it just takes "Edit"->"Find"->close search tab->"Edit"->"Find" to trigger the crash.
Debian sid
Lokalize Version 22.12.3
KDE Frameworks Version 5.107.0
Qt Version 5.15.10 (built against 5.15.10)
The xcb windowing system
Your issue is already solved in bug #460634 and you're using Lokalize version not having the fix from that bug. This bug is about another issue. (In reply to NSLW from comment #8) > Your issue is already solved in bug #460634 and you're using Lokalize > version not having the fix from that bug. > > This bug is about another issue. Sorry for noise. I forgot that I have switched from Gentoo to Debian Sid (unstable) and thus ancient packages is a norm even when running the bleeding edge version :-( Yeah, that is an app bug and that got fixed there, deleting a menu or widget during it's event handling is no good idea. *** This bug has been marked as a duplicate of bug 460634 *** |