aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--jnlib/ChangeLog4
-rw-r--r--jnlib/argparse.c6
2 files changed, 7 insertions, 3 deletions
diff --git a/jnlib/ChangeLog b/jnlib/ChangeLog
index 8b6404d8b..4a420744e 100644
--- a/jnlib/ChangeLog
+++ b/jnlib/ChangeLog
@@ -1,3 +1,7 @@
+2008-11-20 Werner Koch <[email protected]>
+
+ * argparse.c (arg_parse): Fix last change.
+
2008-11-11 Werner Koch <[email protected]>
* argparse.h: Add a bunch of macros and constants.
diff --git a/jnlib/argparse.c b/jnlib/argparse.c
index e9905e385..22133f410 100644
--- a/jnlib/argparse.c
+++ b/jnlib/argparse.c
@@ -585,7 +585,7 @@ arg_parse( ARGPARSE_ARGS *arg, ARGPARSE_OPTS *opts)
s = *argv;
arg->internal.last = s;
- if (arg->internal.stopped && (arg->flags & ARGPARSE_FLAG_KEEP))
+ if (arg->internal.stopped && (arg->flags & ARGPARSE_FLAG_ALL))
{
arg->r_opt = ARGPARSE_IS_ARG; /* Not an option but an argument. */
arg->r_type = 2;
@@ -603,7 +603,7 @@ arg_parse( ARGPARSE_ARGS *arg, ARGPARSE_OPTS *opts)
char *argpos;
arg->internal.inarg = 0;
- if (!s[2] && !(arg->flags & ARGPARSE_FLAG_MIXED))
+ if (!s[2] && !(arg->flags & ARGPARSE_FLAG_NOSTOP))
{
/* Stop option processing. */
arg->internal.stopped = 1;
@@ -786,7 +786,7 @@ arg_parse( ARGPARSE_ARGS *arg, ARGPARSE_OPTS *opts)
argc--; argv++; idx++;
}
}
- else if ( arg->flags & ARGPARSE_FLAG_ALL )
+ else if ( arg->flags & ARGPARSE_FLAG_MIXED )
{
arg->r_opt = ARGPARSE_IS_ARG;
arg->r_type = 2;