diff options
| author | Emmanuel Pescosta <[email protected]> | 2015-01-29 13:45:14 +0100 |
|---|---|---|
| committer | Emmanuel Pescosta <[email protected]> | 2015-01-29 13:45:14 +0100 |
| commit | f8187b982afbcd16d15756d8a9840222cfe91d2d (patch) | |
| tree | 7346b5ef082bab7bbc432d783a7a8b7a80a8bafd /src | |
| parent | a06ee3399bece608790e419054f95807a017a020 (diff) | |
Revert commit 0c6c76b038e868e225f7816fae39635d472bce0a and make the
QWeakPointer a QPointer (+comment) to make it clear, that we must track the lifetime of the context menu instead of doing "only" out of scope deleting.
Thanks to Frank for pointing out this problem!
CCMAIL: [email protected]
Diffstat (limited to 'src')
| -rw-r--r-- | src/dolphinmainwindow.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 398af70a8..1360a42e5 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -758,7 +758,7 @@ void DolphinMainWindow::openContextMenu(const QPoint& pos, const QUrl& url, const QList<QAction*>& customActions) { - QScopedPointer<DolphinContextMenu> contextMenu(new DolphinContextMenu(this, pos, item, url)); + QPointer<DolphinContextMenu> contextMenu = new DolphinContextMenu(this, pos, item, url); contextMenu.data()->setCustomActions(customActions); const DolphinContextMenu::Command command = contextMenu.data()->open(); @@ -781,6 +781,11 @@ void DolphinMainWindow::openContextMenu(const QPoint& pos, default: break; } + + // Delete the menu, unless it has been deleted in its own nested event loop already. + if (contextMenu) { + contextMenu->deleteLater(); + } } void DolphinMainWindow::updateControlMenu() |
