summaryrefslogtreecommitdiff
path: root/mktree.c
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2007-02-27 02:27:26 -0800
committerJunio C Hamano <junkio@cox.net>2007-02-27 02:27:26 -0800
commit88459358cdd70246e805b0ee7db7fffb9564f80e (patch)
tree2bbb9cc6508fb5eb33e0d2fe1f70c5ada0bb7334 /mktree.c
parentfee7c2c71d9e35b2f54aa3631072bd7f73bb7b4c (diff)
parent0ab179504a17907c395a4009f7c23d2f71bba1d3 (diff)
downloadgit-88459358cdd70246e805b0ee7db7fffb9564f80e.tar.gz
Merge branch 'np/types' into jc/fetch
* np/types: (253 commits) get rid of lookup_object_type() convert object type handling from a string to a number formalize typename(), and add its reverse type_from_string() sha1_file.c: don't ignore an error condition in sha1_loose_object_info() sha1_file.c: cleanup "offset" usage sha1_file.c: cleanup hdr usage git-apply: do not fix whitespaces on context lines. diff --cc: integer overflow given a 2GB-or-larger file mailinfo: do not get confused with logical lines that are too long. Documentation: link in 1.5.0.2 material to the top documentation page. Documentation: document remote.<name>.tagopt GIT 1.5.0.2 git-remote: support remotes with a dot in the name Documentation: describe "-f/-t/-m" options to "git-remote add" diff --cc: fix display of symlink conflicts during a merge. merge-recursive: fix longstanding bug in merging symlinks merge-index: fix longstanding bug in merging symlinks diff --cached: give more sensible error message when HEAD is yet to be created. Update tests to use test-chmtime Add test-chmtime: a utility to change mtime on files ...
Diffstat (limited to 'mktree.c')
-rw-r--r--mktree.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/mktree.c b/mktree.c
index 56205d1e00..d86dde89d6 100644
--- a/mktree.c
+++ b/mktree.c
@@ -95,7 +95,7 @@ int main(int ac, char **av)
int len;
char *ptr, *ntr;
unsigned mode;
- char type[20];
+ enum object_type type;
char *path;
read_line(&sb, stdin, line_termination);
@@ -115,11 +115,12 @@ int main(int ac, char **av)
ntr[41] != '\t' ||
get_sha1_hex(ntr + 1, sha1))
die("input format error: %s", sb.buf);
- if (sha1_object_info(sha1, type, NULL))
+ type = sha1_object_info(sha1, NULL);
+ if (type < 0)
die("object %s unavailable", sha1_to_hex(sha1));
*ntr++ = 0; /* now at the beginning of SHA1 */
- if (strcmp(ptr, type))
- die("object type %s mismatch (%s)", ptr, type);
+ if (type != type_from_string(ptr))
+ die("object type %s mismatch (%s)", ptr, typename(type));
ntr += 41; /* at the beginning of name */
if (line_termination && ntr[0] == '"')
path = unquote_c_style(ntr, NULL);