diff options
Diffstat (limited to 'src/plugins/cppeditor/cppquickfixassistant.cpp')
-rw-r--r-- | src/plugins/cppeditor/cppquickfixassistant.cpp | 9 |
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); } |