From: Karthik Nayak Date: Wed, 06 Jan 2016 18:27:56 GMT Subject: Re: [PATCH v3 15/15] ref-filter: introduce objectname_atom_parser() Message-ID: In-Reply-To: On Wed, Jan 6, 2016 at 3:01 AM, Junio C Hamano wrote: > Karthik Nayak writes: > >> @@ -467,15 +482,17 @@ static void *get_obj(const unsigned char *sha1, struct object **obj, unsigned lo >> } >> >> static int grab_objectname(const char *name, const unsigned char *sha1, >> - struct atom_value *v) >> + struct atom_value *v, struct used_atom *atom) >> { >> - if (!strcmp(name, "objectname")) { >> - v->s = xstrdup(sha1_to_hex(sha1)); >> - return 1; >> - } >> - if (!strcmp(name, "objectname:short")) { >> - v->s = xstrdup(find_unique_abbrev(sha1, DEFAULT_ABBREV)); >> - return 1; >> + if (starts_with(name, "objectname")) { > > The original used to reject "objectnamefoo", but the updated one is > more sloppy. Shouldn't it be doing the same match_atom_name() here? > > This comment applies to many remaining strcmp() and starts_with() > that is reachable from populate_value(). Should we worry about such extensions of atoms? I see that parse_ref_filter_atom() takes care of something like that in the beginning itself -- Regards, Karthik Nayak