diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp index 8fac72b95edc26ec8cee0e101ffb7ff0d02fdafd..21085093cf5ecaf48ef6c1f73479978bbd841acf 100644 --- a/src/plugins/cpptools/cppcodecompletion.cpp +++ b/src/plugins/cpptools/cppcodecompletion.cpp @@ -1386,6 +1386,12 @@ void CppCodeCompletion::completions(QList<TextEditor::CompletionItem> *completio else if (length > 0) { const QString key = m_editor->textAt(m_startPosition, length); + /* Close on the trailing slash for include completion, to enable the slash to + * trigger a new completion list. */ + if ((m_completionOperator == T_STRING_LITERAL || + m_completionOperator == T_ANGLE_STRING_LITERAL) && key.endsWith(QLatin1Char('/'))) + return; + if (m_completionOperator != T_LPAREN) { /* * This code builds a regular expression in order to more intelligently match diff --git a/src/plugins/texteditor/completionsupport.cpp b/src/plugins/texteditor/completionsupport.cpp index 2938ed3afeca74f8faba43fc2655cd8c3ee86809..33bfed1e9e15975d9ed008e94468b9d30bb4f0e4 100644 --- a/src/plugins/texteditor/completionsupport.cpp +++ b/src/plugins/texteditor/completionsupport.cpp @@ -129,7 +129,7 @@ void CompletionSupport::autoComplete_helper(ITextEditable *editor, bool forced, m_startPosition = m_completionCollector->startCompletion(editor); completionItems = getCompletions(); - QTC_ASSERT(m_startPosition != -1 || completionItems.size() == 0, return); + QTC_ASSERT(!(m_startPosition == -1 && completionItems.size() > 0), return); if (completionItems.isEmpty()) { cleanupCompletions();