diff options
author | Jarek Kobus <jaroslaw.kobus@theqtcompany.com> | 2016-07-25 13:09:06 +0200 |
---|---|---|
committer | Jarek Kobus <jaroslaw.kobus@qt.io> | 2016-07-25 13:29:10 +0000 |
commit | adbc3f611f9101aafbcb2d852ef2121276db1103 (patch) | |
tree | 3326704dcd5f35eec477ee8ea261b65d9bdf13a1 /src/plugins/diffeditor/diffeditorplugin.cpp | |
parent | 3c1647e6b22409099b20436010672d89fcd51518 (diff) | |
download | qt-creator-adbc3f611f9101aafbcb2d852ef2121276db1103.tar.gz |
Show proper diff when one of diff files is missing
Task-number: QTCREATORBUG-16540
Change-Id: I185ac8e7c8be364c1e2f74bfe0af6f9e393c89be
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/plugins/diffeditor/diffeditorplugin.cpp')
-rw-r--r-- | src/plugins/diffeditor/diffeditorplugin.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/plugins/diffeditor/diffeditorplugin.cpp b/src/plugins/diffeditor/diffeditorplugin.cpp index 8f7ffd5216..9f0e42738f 100644 --- a/src/plugins/diffeditor/diffeditorplugin.cpp +++ b/src/plugins/diffeditor/diffeditorplugin.cpp @@ -74,19 +74,21 @@ void FileDiffController::reload() format.codec = Core::EditorManager::defaultTextCodec(); QString leftText; + bool leftFileExists = true; if (Utils::TextFileFormat::readFile(m_leftFileName, format.codec, &leftText, &format, &errorString) != Utils::TextFileFormat::ReadSuccess) { - return; + leftFileExists = false; } QString rightText; + bool rightFileExists = true; if (Utils::TextFileFormat::readFile(m_rightFileName, format.codec, &rightText, &format, &errorString) != Utils::TextFileFormat::ReadSuccess) { - return; + rightFileExists = false; } Differ differ; @@ -115,6 +117,10 @@ void FileDiffController::reload() FileData fileData = DiffUtils::calculateContextData(chunkData, contextLineCount(), 0); fileData.leftFileInfo.fileName = m_leftFileName; fileData.rightFileInfo.fileName = m_rightFileName; + if (!leftFileExists && rightFileExists) + fileData.fileOperation = FileData::NewFile; + else if (leftFileExists && !rightFileExists) + fileData.fileOperation = FileData::DeleteFile; QList<FileData> fileDataList; fileDataList << fileData; |