X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flibpspp%2Fargv-parser.c;h=48c89cd6d44e93f6bb69f99a41bd6a98024c54af;hb=9d24b4fb4d831d7a2bebb51fd111726f0e682e45;hp=dfa86fad5b70d201671f6f5dcbf8192e12e6a722;hpb=d8493b3b0617cc447446a70b031a69079bc19002;p=pspp diff --git a/src/libpspp/argv-parser.c b/src/libpspp/argv-parser.c index dfa86fad5b..48c89cd6d4 100644 --- a/src/libpspp/argv-parser.c +++ b/src/libpspp/argv-parser.c @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -16,14 +16,14 @@ #include -#include +#include "libpspp/argv-parser.h" #include -#include -#include +#include "libpspp/assertion.h" +#include "libpspp/str.h" -#include "xalloc.h" +#include "gl/xalloc.h" struct argv_option_plus { @@ -43,7 +43,7 @@ struct argv_parser struct argv_parser * argv_parser_create (void) { - struct argv_parser *ap = xzalloc (sizeof *ap); + struct argv_parser *ap = XZALLOC (struct argv_parser); return ap; } @@ -162,7 +162,7 @@ argv_parser_run (struct argv_parser *ap, int argc, char **argv) retval = false; break; } - else if (c >= LONGOPT_VAL_BASE && c < LONGOPT_VAL_BASE + n_longopts) + else if (c >= LONGOPT_VAL_BASE && c < LONGOPT_VAL_BASE + n_longopts + 1) { struct argv_option_plus *aop = &ap->options[c - LONGOPT_VAL_BASE]; aop->cb (aop->base.id, aop->aux);