idetect binary diff, comment index + delta header for now (broken) - stagit-gopher - A git gopher frontend. (mirror) Err bitreich.org 70 hgit clone git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ URL:git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ bitreich.org 70 1Log /scm/stagit-gopher/log.gph bitreich.org 70 1Files /scm/stagit-gopher/files.gph bitreich.org 70 1Refs /scm/stagit-gopher/refs.gph bitreich.org 70 1Tags /scm/stagit-gopher/tag bitreich.org 70 1README /scm/stagit-gopher/file/README.gph bitreich.org 70 1LICENSE /scm/stagit-gopher/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit fe5855546a20df48fd60e8c78674ff91fbcfc710 /scm/stagit-gopher/commit/fe5855546a20df48fd60e8c78674ff91fbcfc710.gph bitreich.org 70 1parent 18e6c1beda47949082d0630fb3a697438b2e80d9 /scm/stagit-gopher/commit/18e6c1beda47949082d0630fb3a697438b2e80d9.gph bitreich.org 70 hAuthor: Hiltjo Posthuma URL:mailto:hiltjo@codemadness.org bitreich.org 70 iDate: Mon, 7 Dec 2015 20:46:51 +0100 Err bitreich.org 70 i Err bitreich.org 70 idetect binary diff, comment index + delta header for now (broken) Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M urmoms.c | 36 +++++++++++++++++++++---------- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 25 insertions(+), 11 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/urmoms.c b/urmoms.c /scm/stagit-gopher/file/urmoms.c.gph bitreich.org 70 i@@ -257,19 +257,33 @@ printshowfile(git_commit *commit) Err bitreich.org 70 i relpath, delta->old_file.path, delta->old_file.path, Err bitreich.org 70 i relpath, delta->new_file.path, delta->new_file.path); Err bitreich.org 70 i Err bitreich.org 70 i- /* TODO: add --- and +++ lines */ Err bitreich.org 70 i+ /* TODO: "new file mode ". */ Err bitreich.org 70 i+ /* TODO: add indexfrom...indexto + flags */ Err bitreich.org 70 i Err bitreich.org 70 i #if 0 Err bitreich.org 70 i- switch (delta->flags) { Err bitreich.org 70 i- case GIT_DIFF_FLAG_BINARY: Err bitreich.org 70 i- /* "Binary files /dev/null and b/favicon.png differ" or so */ Err bitreich.org 70 i- continue; /* TODO: binary data */ Err bitreich.org 70 i- case GIT_DIFF_FLAG_NOT_BINARY: break; Err bitreich.org 70 i- case GIT_DIFF_FLAG_VALID_ID: break; /* TODO: check */ Err bitreich.org 70 i- case GIT_DIFF_FLAG_EXISTS: break; /* TODO: check */ Err bitreich.org 70 i- } Err bitreich.org 70 i+ fputs("--- ", fp); Err bitreich.org 70 i+ if (delta->status & GIT_DELTA_ADDED) Err bitreich.org 70 i+ fputs("/dev/null", fp); Err bitreich.org 70 i+ else Err bitreich.org 70 i+ fprintf(fp, "a/%s", Err bitreich.org 70 i+ relpath, delta->old_file.path, delta->old_file.path); Err bitreich.org 70 i+ Err bitreich.org 70 i+ fputs("\n+++ ", fp); Err bitreich.org 70 i+ if (delta->status & GIT_DELTA_DELETED) Err bitreich.org 70 i+ fputs("/dev/null", fp); Err bitreich.org 70 i+ else Err bitreich.org 70 i+ fprintf(fp, "b/%s", Err bitreich.org 70 i+ relpath, delta->new_file.path, delta->new_file.path); Err bitreich.org 70 i+ fputs("\n", fp); Err bitreich.org 70 i #endif Err bitreich.org 70 i Err bitreich.org 70 i+ /* check binary data */ Err bitreich.org 70 i+ if (delta->flags & GIT_DIFF_FLAG_BINARY) { Err bitreich.org 70 i+ fputs("Binary files differ\n", fp); Err bitreich.org 70 i+ git_patch_free(patch); Err bitreich.org 70 i+ continue; Err bitreich.org 70 i+ } Err bitreich.org 70 i+ Err bitreich.org 70 i nhunks = git_patch_num_hunks(patch); Err bitreich.org 70 i for (j = 0; j < nhunks; j++) { Err bitreich.org 70 i if (git_patch_get_hunk(&hunk, &nhunklines, patch, j)) Err bitreich.org 70 i@@ -333,8 +347,8 @@ writelog(FILE *fp) Err bitreich.org 70 i "Files+-\n\n", fp); Err bitreich.org 70 i while (!git_revwalk_next(&id, w)) { Err bitreich.org 70 i /* DEBUG */ Err bitreich.org 70 i- if (i++ > 100) Err bitreich.org 70 i- break; Err bitreich.org 70 i+/* if (i++ > 100) Err bitreich.org 70 i+ break;*/ Err bitreich.org 70 i Err bitreich.org 70 i relpath = ""; Err bitreich.org 70 i Err bitreich.org 70 .