┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMartin T. H. Sandsmark <[email protected]>2021-01-04 19:33:58 +0100
committerElvis Angelaccio <[email protected]>2021-01-05 17:08:17 +0000
commita993a5979dcfde63004b2ef00c98f1fa50e07b2c (patch)
tree9dab070a4cae80f5983cfb7bcefd164b13ce570e /src
parent49e8b67b7121d19a88a9e0d114f849a6c928f5cc (diff)
fix crashing on launch
Diffstat (limited to 'src')
-rw-r--r--src/views/versioncontrol/versioncontrolobserver.cpp10
-rw-r--r--src/views/versioncontrol/versioncontrolobserver.h2
2 files changed, 8 insertions, 4 deletions
diff --git a/src/views/versioncontrol/versioncontrolobserver.cpp b/src/views/versioncontrol/versioncontrolobserver.cpp
index 709d98e42..cf5be3c91 100644
--- a/src/views/versioncontrol/versioncontrolobserver.cpp
+++ b/src/views/versioncontrol/versioncontrolobserver.cpp
@@ -112,7 +112,7 @@ QList<QAction*> VersionControlObserver::actions(const KFileItemList& items) cons
return m_plugin->versionControlActions(items);
} else {
QList<QAction*> actions;
- for (const auto &plugin : qAsConst(m_plugins)) {
+ for (const QPointer<KVersionControlPlugin> &plugin : qAsConst(m_plugins)) {
actions << plugin->outOfVersionControlActions(items);
}
return actions;
@@ -306,14 +306,18 @@ KVersionControlPlugin* VersionControlObserver::searchPlugin(const QUrl& director
initPlugins();
// Verify whether the current directory is under a version system
- for (const auto &plugin : qAsConst(m_plugins)) {
+ for (const QPointer<KVersionControlPlugin> &plugin : qAsConst(m_plugins)) {
+ if (!plugin) {
+ continue;
+ }
+
// first naively check if we are at working copy root
const QString fileName = directory.path() + '/' + plugin->fileName();
if (QFile::exists(fileName)) {
m_localRepoRoot = directory.path();
return plugin;
}
- auto root = plugin->localRepositoryRoot(directory.path());
+ const QString root = plugin->localRepositoryRoot(directory.path());
if (!root.isEmpty()) {
m_localRepoRoot = root;
return plugin;
diff --git a/src/views/versioncontrol/versioncontrolobserver.h b/src/views/versioncontrol/versioncontrolobserver.h
index d9cc90cc6..5f425fe85 100644
--- a/src/views/versioncontrol/versioncontrolobserver.h
+++ b/src/views/versioncontrol/versioncontrolobserver.h
@@ -146,7 +146,7 @@ private:
bool m_pluginsInitialized;
KVersionControlPlugin* m_plugin;
- QList<KVersionControlPlugin*> m_plugins;
+ QList<QPointer<KVersionControlPlugin>> m_plugins;
UpdateItemStatesThread* m_updateItemStatesThread;
friend class UpdateItemStatesThread;