{"thread":{"id":"10653","subject":"[PATCH qgit] Update to latest --early-output git log patch","startedAt":"2007-11-04T20:50:35Z","lastAt":"2007-11-04T20:50:35Z","messageCount":1,"participants":["Marco Costalba"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"58304","messageId":"e5bfff550711041250p1c48910fqa631cd7fd3c505f8@mail.gmail.com","threadId":"10653","inReplyTo":null,"subject":"[PATCH qgit] Update to latest --early-output git log patch","fromName":"Marco Costalba","fromEmail":"mcostalba@gmail.com","sentAt":"2007-11-04T20:50:35Z","receivedAt":"2007-11-04T20:50:35Z","isPatch":true,"sender":{"key":"mcostalba@gmail.com","avatar":null},"body":"Fix broken implementation after Linus updated his\nearly output patch to version with improve output format.\n\nSigned-off-by: Marco Costalba <mcostalba@gmail.com>\n---\n src/git.h           |    2 +-\n src/git_startup.cpp |   10 +++++-----\n 2 files changed, 6 insertions(+), 6 deletions(-)\n\ndiff --git a/src/git.h b/src/git.h\nindex 92879fb..789fea4 100644\n--- a/src/git.h\n+++ b/src/git.h\n@@ -251,7 +251,7 @@ private:\n \tbool startParseProc(SCList initCmd, FileHistory* fh, SCRef buf);\n \tbool tryFollowRenames(FileHistory* fh);\n \tbool populateRenamedPatches(SCRef sha, SCList nn, FileHistory* fh,\nQStringList* on, bool bt);\n-\tvoid doEarlyOutput(Rev* rev, int* start);\n+\tvoid doEarlyOutput(Rev* rev, const QByteArray& ba, int* start);\n \tint addChunk(FileHistory* fh, const QByteArray& ba, int ofs);\n \tvoid parseDiffFormat(RevFile& rf, SCRef buf);\n \tvoid parseDiffFormatLine(RevFile& rf, SCRef line, int parNum);\ndiff --git a/src/git_startup.cpp b/src/git_startup.cpp\nindex df272fc..090d5f9 100644\n--- a/src/git_startup.cpp\n+++ b/src/git_startup.cpp\n@@ -841,10 +841,10 @@ void Git::loadFileNames() {\n \tindexTree();\n }\n\n-void Git::doEarlyOutput(Rev* rev, int* start) {\n+void Git::doEarlyOutput(Rev* rev, const QByteArray& ba, int* start) {\n\n \tdelete rev;\n-\t*start += QString(\"Final output:\\n\").length();\n+\t*start = ba.indexOf('\\n', *start) + 1;\n\n \tRev* cl = NULL;\n \tconst Rev* r = revLookup(ZERO_SHA);\n@@ -870,7 +870,7 @@ int Git::addChunk(FileHistory* fh, const\nQByteArray& ba, int start) {\n \t\trev = new Rev(ba, start, fh->revOrder.count(), &nextStart,\n!isMainHistory(fh));\n\n \t\tif (nextStart == -2)\n-\t\t\tdoEarlyOutput(rev, &start);\n+\t\t\tdoEarlyOutput(rev, ba, &start);\n\n \t} while (nextStart == -2);\n\n@@ -1377,8 +1377,8 @@ int Rev::indexData(bool quick, bool withDiff) const {\n \tif (start > last) // offset 'start' points to the char after \"commit \"\n \t\treturn -1;\n\n-\tif (uint(ba.at(start) == 'u'))\n-\t\treturn -2; // \"Final output:\", let caller handle this\n+\tif (uint(ba.at(start) == 'u')) // \"Final output:\", let caller handle this\n+\t\treturn (ba.indexOf('\\n', start) != -1 ? -2 : -1);\n\n \t// take in account --boundary and --left-right options\n \tstartOfs = uint(ba.at(start) == '-' || ba.at(start) == '<' ||\nba.at(start) == '>');\n-- \n1.5.3.5.565.g985b6\n"}]}