Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
diff-tree: show hex sha1 of the single-commit argument case correctly.
author
Linus Torvalds
<torvalds@ppc970.osdl.org>
Wed, 18 May 2005 20:43:58 +0000
(13:43 -0700)
committer
Linus Torvalds
<torvalds@ppc970.osdl.org>
Wed, 18 May 2005 20:43:58 +0000
(13:43 -0700)
We can't just do the "sha1_to_hex()" thing directly, since the
buffer in question will be overwritten by the name of the parent.
So teach diff_tree_commit() to generate the proper hex name itself.
diff-tree.c
patch
|
blob
|
history
raw
|
patch
| inline |
side by side
(parent:
0a8365a
)
diff --git
a/diff-tree.c
b/diff-tree.c
index 8cfe990023bbae14ff36a23bed1923513a9b022e..acd15243435742fdeb3bbdc29c1ff7ffa27cbb2f 100644
(file)
--- a/
diff-tree.c
+++ b/
diff-tree.c
@@
-356,6
+356,12
@@
static int diff_tree_commit(const unsigned char *commit, const char *name)
return 0;
}
+ if (!name) {
+ static char commit_name[60];
+ strcpy(commit_name, sha1_to_hex(commit));
+ name = commit_name;
+ }
+
offset = 46;
while (offset + 48 < size && !memcmp(buf + offset, "parent ", 7)) {
unsigned char parent[20];
@@
-472,7
+478,7
@@
int main(int argc, char **argv)
usage(diff_tree_usage);
break;
case 1:
- diff_tree_commit(sha1[0],
sha1_to_hex(sha1[0])
);
+ diff_tree_commit(sha1[0],
NULL
);
break;
case 2:
diff_tree_sha1(sha1[0], sha1[1], "");