From: Junio C Hamano Date: Sun, 08 Mar 2015 08:09:54 GMT Subject: Re: [PATCH v3 2/3] sha1_file: implement changes for "cat-file --literally -t" Message-ID: In-Reply-To: <54FACD30.6080005@gmail.com> karthik nayak writes: > On 03/07/2015 12:58 AM, Junio C Hamano wrote: > > case 't': > oi.typep = &type; > oi.typename = &sb; > sha1_object_info_extended(sha1, &oi, flags); > if (sb.len) { > printf("%s\n", sb.buf); > strbuf_release(&sb); > return 0; > } else if (type) { > printf("%s\n", typename(type)); > return 0; > } > break; > > This works but I need an else statement to check the type if not > getting the type literally, which is because if not called literally > the oi.typename is not set,... Hmph, when I outlined that change to object-info-extended, I meant to do it in such a way that when the optional oi->typename is set, it is always filled whether "literally" is asked for andr whether the object is a kosher one or a bogus one. Without parsing the header, we wouldn't know how long the object would be, so I do not know if not doing some variant of parse_header is an option. Thanks.