| Commit message (Expand) | Author | Age | Files | Lines |
| * | simplify part of getopt_long•••as a result of commit e8e4e56a8ce1f3d7e4a027ff5478f2f8ea70c46b,
the later code path for setting optarg to a null pointer is no longer
necessary, and removing it eliminates an indention level and arguably
makes the code more readable.
| Rich Felker | 2015-01-21 | 1 | -13/+11 |
| * | always set optarg in getopt_long•••the standard getopt does not touch optarg unless processing an option
with an argument. however, programs using the GNU getopt API, which we
attempt to provide in getopt_long, expect optarg to be a null pointer
after processing an option without an argument.
before argument permutation support was added, such programs typically
detected its absence and used their own replacement getopt_long,
masking the discrepency in behavior.
| Rich Felker | 2015-01-21 | 1 | -1/+1 |
| * | fix regression in getopt_long support for non-option arguments•••commit b72cd07f176b876aa51864d93aa8101477b1d732 added support for a
this feature in getopt, but it was later broken in the case where
getopt_long is used as a side effect of the changes made in commit
91184c4f16b143107fa9935edebe5d2b20bd70d8, which prevented the
underlying getopt call from seeing the leading '-' or '+' character in
optstring.
this commit changes the logic in the getopt_long core to check for a
leading colon, possibly after the leading '-' or '+', without
depending on the latter having been skipped by the caller. a minor
incorrectness in the return value for one error condition in
getopt_long is also fixed when opterr has been set to zero but
optstring has no leading ':'.
| Rich Felker | 2015-01-11 | 1 | -7/+6 |
| * | set optopt in getopt_long•••this is undocumented but possibly expected behavior of GNU
getopt_long, and useful when error message printing has been
suppressed.
| Rich Felker | 2014-12-20 | 1 | -0/+1 |
| * | add error message printing to getopt_long and make related improvements•••some related changes are also made to getopt, and the return value of
getopt_long in the case of missing arguments is fixed.
| Rich Felker | 2014-12-20 | 1 | -4/+30 |
| * | simplify getopt_long argv permutation loop logic | Rich Felker | 2014-12-13 | 1 | -3/+1 |
| * | fix handling of "--" with getopt_long argv permutation•••if argv permutation is used, the option terminator "--" should be
moved before any skipped non-option arguments rather than being left
in the argv tail where the caller will see and interpret it.
| Rich Felker | 2014-12-13 | 1 | -1/+0 |
| * | accept null longopts pointer in getopt_long•••this is an undocumented feature of GNU getopt_long that the BSD
version also mimics, and is reportedly needed by some programs.
| Rich Felker | 2014-12-11 | 1 | -1/+1 |
| * | support abbreviated options in getopt_long | Rich Felker | 2014-12-10 | 1 | -7/+18 |
| * | support options after non-option arguments in getopt_long (argv permutation) | Rich Felker | 2014-12-10 | 1 | -0/+39 |
| * | add support for non-option arguments extension to getopt•••this is a GNU extension, activated by including '-' as the first
character of the options string, whereby non-option arguments are
processed as if they were arguments to an option character '\1' rather
than ending option processing.
| Gianluca Anzolin | 2014-12-02 | 1 | -3/+4 |
| * | add getopt reset support•••based on proposed patches by Daniel Cegiełka, with minor changes:
- use a weak symbol for optreset so it doesn't clash with namespace
- also reset optpos (position in multi-option arg like -lR)
- also make getopt_long support reset
| Rich Felker | 2012-09-30 | 1 | -0/+7 |
| * | cleanup src/linux and src/misc trees, etc.•••previously, it was pretty much random which one of these trees a given
function appeared in. they have now been organized into:
src/linux: non-POSIX linux syscalls (possibly shard with other nixen)
src/legacy: various obsolete/legacy functions, mostly wrappers
src/misc: still mostly uncategorized; some misc POSIX, some nonstd
src/crypt: crypt hash functions
further cleanup will be done later.
| Rich Felker | 2012-09-07 | 1 | -0/+52 |