aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cppeditor/cppquickfixassistant.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cppeditor/cppquickfixassistant.cpp')
-rw-r--r--src/plugins/cppeditor/cppquickfixassistant.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/cppeditor/cppquickfixassistant.cpp b/src/plugins/cppeditor/cppquickfixassistant.cpp
index 7517e4c136..8fdcbe6601 100644
--- a/src/plugins/cppeditor/cppquickfixassistant.cpp
+++ b/src/plugins/cppeditor/cppquickfixassistant.cpp
@@ -55,12 +55,13 @@ class CppQuickFixAssistProcessor : public IAssistProcessor
IAssistProposal *perform(const AssistInterface *interface) override
{
QSharedPointer<const AssistInterface> assistInterface(interface);
+ auto cppInterface = assistInterface.staticCast<const CppQuickFixInterface>();
+ if (cppInterface->path().isEmpty())
+ return nullptr;
QuickFixOperations quickFixes;
-
- for (QuickFixFactory *factory : QuickFixFactory::allQuickFixFactories())
- if (qobject_cast<CppQuickFixFactory *>(factory) != nullptr)
- factory->matchingOperations(assistInterface, quickFixes);
+ for (CppQuickFixFactory *factory : CppQuickFixFactory::cppQuickFixFactories())
+ factory->match(*cppInterface, quickFixes);
return GenericProposal::createProposal(interface, quickFixes);
}