This means that the user can start another ListJob, leading to a crash. Reproducible: Always Steps to Reproduce: 1. Open an huge archive 2. Archive -> Open Recent while the previous archive is still loading Actual Results: Crash Expected Results: Archive -> Open Recent should not be enabled during a ListJob
Found the cause: the action is correctly disabled when the Part emits the busy signal, but then m_recentFilesAction->addUrl(url) in MainWindow::openUrl() unexpectedly enables the action again.
Git commit 61d9f87227711c9b9a7d0180479f94447c6039f7 by Elvis Angelaccio. Committed on 13/11/2016 at 13:46. Pushed by elvisangelaccio into branch 'master'. mainwindow: properly disable 'Open Recent' action KRecentFilesAction::addUrl() makes the action enabled. This is called in MainWindow::openUrl() after `busy()` has been emitted by the Part, which means the action is enabled while a LoadJob is running. If we use a queued connection instead, addUrl() will be called first and then MaindWindow::updateActions() will disable the action as expected. FIXED-IN: 16.12.0 M +3 -1 app/mainwindow.cpp http://commits.kde.org/ark/61d9f87227711c9b9a7d0180479f94447c6039f7