diff options
author | Olga Telezhnaya <olyatelezhnaya@gmail.com> | 2018-02-12 08:08:54 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-02-12 15:03:58 -0800 |
commit | db056a2fce9ca2186a00fe95278787f8e387a350 (patch) | |
tree | fef011d268d98a5919bf521b6d9caa8b3dbe8d50 | |
parent | d37763b0fd27d3dba79e28db84e28e2fa249f7cc (diff) | |
download | git-db056a2fce9ca2186a00fe95278787f8e387a350.tar.gz |
ref-filter: unifying formatting of cat-file opts
cat-file options are now filled by general logic.
Signed-off-by: Olga Telezhnaia <olyatelezhnaya@gmail.com>
Mentored-by: Christian Couder <christian.couder@gmail.com>
Mentored by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | ref-filter.c | 33 |
1 files changed, 16 insertions, 17 deletions
diff --git a/ref-filter.c b/ref-filter.c index dfa8ac704c..7aedd2dce8 100644 --- a/ref-filter.c +++ b/ref-filter.c @@ -824,8 +824,12 @@ static void grab_common_values(struct atom_value *val, int deref, struct object else if (!strcmp(name, "objectsize")) { v->value = sz; v->s = xstrfmt("%lu", sz); - } - else if (deref) + } else if (!strcmp(name, "objectsize:disk")) { + if (cat_file_info.is_cat_file) { + v->value = cat_file_info.disk_size; + v->s = xstrfmt("%"PRIuMAX, (uintmax_t)v->value); + } + } else if (deref) grab_objectname(name, obj->oid.hash, v, &used_atom[i]); } } @@ -1465,21 +1469,7 @@ static int populate_value(struct ref_array_item *ref) name++; } - if (cat_file_info.is_cat_file) { - if (starts_with(name, "objectname")) - v->s = oid_to_hex(&ref->oid); - else if (starts_with(name, "objecttype")) - v->s = typename(ref->type); - else if (starts_with(name, "objectsize")) { - v->s = xstrfmt("%lu", ref->size); - } else if (starts_with(name, "objectsize:disk")) { - v->s = xstrfmt("%"PRIuMAX, (uintmax_t)ref->disk_size); - } else if (starts_with(name, "rest")) - v->s = ref->rest; - else if (starts_with(name, "deltabase")) - v->s = xstrdup(oid_to_hex(ref->delta_base_oid)); - continue; - } else if (starts_with(name, "refname")) + if (starts_with(name, "refname")) refname = get_refname(atom, ref); else if (starts_with(name, "symref")) refname = get_symref(atom, ref); @@ -1535,6 +1525,15 @@ static int populate_value(struct ref_array_item *ref) else v->s = " "; continue; + } else if (starts_with(name, "rest")) { + v->s = ref->rest ? ref->rest : ""; + continue; + } else if (starts_with(name, "deltabase")) { + if (ref->delta_base_oid) + v->s = xstrdup(oid_to_hex(ref->delta_base_oid)); + else + v->s = ""; + continue; } else if (starts_with(name, "align")) { v->handler = align_atom_handler; continue; |