Skip to content
Commit a3885b2e authored by Milian Wolff's avatar Milian Wolff
Browse files

Cleanup and fixup ProjectUtils to not leak and not trigger crashes.

The most important part of this patch is the change to use a dynamic
allocated QMenu which is then _not_ run synchronously via exec() but
rather allocate it on the heap and use QObject/QWidget parentship
to handle the deallocation eventually.

This also fixes the memory leak of the populator objects.

And it fixes a crash since QMenu::exec applies a nested event loop
which apparently does not work nicely together with KXMLGUI. One
could also fix that by delaying (i.e. Qt::QueuedConnection) the
handling of _all_ QMenu actions - but that won't work of course.

So yeah, I think this is the best option to handle this crash.

Maybe one should even investigate whether we can/should deprecate
the usage of QMenu::exec in our codebase...

BUG: 311447
parent 02f81ce3
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment