On Sat, Dec 12, 2015 at 10:10 PM, Eric Sunshine <[email protected]> wrote:
> On Wed, Nov 11, 2015 at 2:44 PM, Karthik Nayak <[email protected]> wrote:
>> +void contents_atom_parser(struct used_atom *atom)
>> +{
>> + const char * buf;
>> +
>> + if (match_atom_name(atom->str, "contents", &buf))
>> + atom->u.contents.all = 1;
>> +
>> + if (!buf)
>> + return;
Also, isn't this logic somewhat bogus? u.contents.all is set to 1 for
both bare %(contents) and decorated %(contents:whatever). Then, below,
you also set one of .body, .signature, .subject, or .lines if a
decoration is specified. So, now you have both .all and one of the
other attributes set to 1, which is rather nonsensical (if I
understand correctly).
If you change this to an enum as suggested in my previous email, then
the problem goes away.
>> + if (!strcmp(buf, "body"))
>> + atom->u.contents.body = 1;
>> + else if (!strcmp(buf, "signature"))
>> + atom->u.contents.signature = 1;
>> + else if (!strcmp(buf, "subject"))
>> + atom->u.contents.subject = 1;
>> + else if (skip_prefix(buf, "lines=", &buf)) {
>> + atom->u.contents.lines = 1;
>> + if (strtoul_ui(buf, 10, &atom->u.contents.no_lines))
>> + die(_("positive value expected contents:lines=%s"),
>> buf);
>> + } else
>> + die(_("improper format entered contents:%s"), buf);
>> +}
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html