Git: InstantBlame: No line diff for modified lines

Avoids the following error message:
qtc.vcs.git.instantblame: "fatal: bad object
0000000000000000000000000000000000000000\n"

Change-Id: I44e45f02e9aaa6d31910441034b77a034b59d499
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
Andre Hartmann
2024-10-08 09:15:08 +02:00
committed by André Hartmann
parent 79a789bbf4
commit 598505ce76

View File

@@ -407,6 +407,10 @@ void InstantBlame::perform()
const CommitInfo info = parseBlameOutput(output.split('\n'), filePath, line, m_author); const CommitInfo info = parseBlameOutput(output.split('\n'), filePath, line, m_author);
m_blameMark.reset(new BlameMark(filePath, line, info)); m_blameMark.reset(new BlameMark(filePath, line, info));
static const QString uncommittedHash(40, '0');
if (info.hash == uncommittedHash)
return;
// Get line diff: `git log -n 1 -p -L47,47:README.md a5c4c34c9ab4` // Get line diff: `git log -n 1 -p -L47,47:README.md a5c4c34c9ab4`
const QString origLineString = QString("%1,%1").arg(info.originalLine); const QString origLineString = QString("%1,%1").arg(info.originalLine);
const QString fileLineRange = "-L" + origLineString + ":" + info.originalFileName; const QString fileLineRange = "-L" + origLineString + ":" + info.originalFileName;