[PATCH 1/2] cli: fix notmuch top level argument parsing
Jani Nikula
jani at nikula.org
Mon Dec 3 14:17:41 PST 2012
On Mon, 03 Dec 2012, Michal Nazarewicz <mina86 at mina86.com> wrote:
> On Mon, Dec 03 2012, Jani Nikula wrote:
>> Use strcmp instead of STRNCMP_LITERAL, which matches the prefix
>> instead of the whole argument.
>
> Perhaps add and use this instead:
>
> #define STRCMP_LITERAL(var, literal) \
> strncmp ((var), (literal), sizeof (literal))
That's broken the same way STRNCMP_LITERAL is broken in this use case:
it matches if literal is a prefix of var.
BR,
Jani.
>
> Than again, it's argument parsing so hardly a performance critical path,
> so maybe readability is more important.
>
>> ---
>> notmuch.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/notmuch.c b/notmuch.c
>> index 477a09c..4ff66e3 100644
>> --- a/notmuch.c
>> +++ b/notmuch.c
>> @@ -245,10 +245,10 @@ main (int argc, char *argv[])
>> if (argc == 1)
>> return notmuch (local);
>>
>> - if (STRNCMP_LITERAL (argv[1], "--help") == 0)
>> + if (strcmp (argv[1], "--help") == 0)
>> return notmuch_help_command (NULL, argc - 1, &argv[1]);
>>
>> - if (STRNCMP_LITERAL (argv[1], "--version") == 0) {
>> + if (strcmp (argv[1], "--version") == 0) {
>> printf ("notmuch " STRINGIFY(NOTMUCH_VERSION) "\n");
>> return 0;
>> }
>
> --
> Best regards, _ _
> .o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o
> ..o | Computer Science, Michał “mina86” Nazarewicz (o o)
> ooo +----<email/xmpp: mpn at google.com>--------------ooO--(_)--Ooo--
More information about the notmuch
mailing list