diff options
author | Junio C Hamano <gitster@pobox.com> | 2013-10-23 13:21:30 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-10-23 13:21:31 -0700 |
commit | 4197361e39a304df30cc492122dbdfe90ae8af0e (patch) | |
tree | e64abbced7f07dab484262d7c0dab12af1abe2d0 /builtin/cat-file.c | |
parent | eeb8e8373f68b706f5fc8a00760c3dedf239db70 (diff) | |
parent | afa15f3cd8f4cbf9572138329be374ff8566b10a (diff) | |
download | git-4197361e39a304df30cc492122dbdfe90ae8af0e.tar.gz |
Merge branch 'mg/more-textconv'
Make "git grep" and "git show" pay attention to --textconv when
dealing with blob objects.
* mg/more-textconv:
grep: honor --textconv for the case rev:path
grep: allow to use textconv filters
t7008: demonstrate behavior of grep with textconv
cat-file: do not die on --textconv without textconv filters
show: honor --textconv for blobs
diff_opt: track whether flags have been set explicitly
t4030: demonstrate behavior of show with textconv
Diffstat (limited to 'builtin/cat-file.c')
-rw-r--r-- | builtin/cat-file.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/builtin/cat-file.c b/builtin/cat-file.c index 41afaa534b..b2ca775a80 100644 --- a/builtin/cat-file.c +++ b/builtin/cat-file.c @@ -45,6 +45,14 @@ static int cat_one_file(int opt, const char *exp_type, const char *obj_name) case 'e': return !has_sha1_file(sha1); + case 'c': + if (!obj_context.path[0]) + die("git cat-file --textconv %s: <object> must be <sha1:path>", + obj_name); + + if (textconv_object(obj_context.path, obj_context.mode, sha1, 1, &buf, &size)) + break; + case 'p': type = sha1_object_info(sha1, NULL); if (type < 0) @@ -67,16 +75,6 @@ static int cat_one_file(int opt, const char *exp_type, const char *obj_name) /* otherwise just spit out the data */ break; - case 'c': - if (!obj_context.path[0]) - die("git cat-file --textconv %s: <object> must be <sha1:path>", - obj_name); - - if (!textconv_object(obj_context.path, obj_context.mode, sha1, 1, &buf, &size)) - die("git cat-file --textconv: unable to run textconv on %s", - obj_name); - break; - case 0: if (type_from_string(exp_type) == OBJ_BLOB) { unsigned char blob_sha1[20]; |