X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fargp-parse.c;h=c884b89760b271b4c3e6ea9faf88a101b934bf3a;hb=cde82ba3a73b7482132a950ac0d7cb0da67a2e1c;hp=9a78778149365b763126c117c5fe0d9062c5202c;hpb=b2e2010c7c902235b5efb5bd3c6529f61b093aa4;p=gnulib.git diff --git a/lib/argp-parse.c b/lib/argp-parse.c index 9a7877814..c884b8976 100644 --- a/lib/argp-parse.c +++ b/lib/argp-parse.c @@ -1,5 +1,5 @@ /* Hierarchial argument parsing, layered over getopt - Copyright (C) 1995-2000, 2002-2004, 2009-2010 Free Software Foundation, Inc. + Copyright (C) 1995-2000, 2002-2004, 2009-2011 Free Software Foundation, Inc. This file is part of the GNU C Library. Written by Miles Bader . @@ -339,7 +339,7 @@ convert_options (const struct argp *argp, values (the sign of the lower bits is preserved however)... */ cvt->long_end->val = - ((opt->key | real->key) & USER_MASK) + ((opt->key ? opt->key : real->key) & USER_MASK) + (((group - cvt->parser->groups) + 1) << USER_BITS); /* Keep the LONG_OPTS list terminated. */