Avoid storing references to rvalue FileName strings

Following 73616849, it is dangerous to store a reference to the rvalue of
toString(), since it might become dangling.

Example:

FileName foo() { return FileName::fromString(QLatin1String("/some/file")); }

void func()
{
    const QString &fileName = foo().toString();
    // fileName is now a dangling reference
}

Change-Id: I5dfad5dc8dd568a0a3c8f9f71ad93292dc26cbbe
Reviewed-by: hjk <hjk@theqtcompany.com>
This commit is contained in:
Orgad Shaneh
2015-03-02 09:18:35 +02:00
committed by hjk
parent 44797cdb52
commit 831701bb67
3 changed files with 3 additions and 3 deletions

View File

@@ -7201,7 +7201,7 @@ void TextEditorWidget::configureGenericHighlighter()
setCodeFoldingSupported(true);
}
} else {
const QString &fileName = textDocument()->filePath().toString();
const QString fileName = textDocument()->filePath().toString();
if (TextEditorSettings::highlighterSettings().isIgnoredFilePattern(fileName))
d->m_isMissingSyntaxDefinition = false;
}