summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvinash Sonawane <rootkea@gmail.com>2021-03-19 14:08:27 +0530
committerAvinash Sonawane <rootkea@gmail.com>2021-03-19 14:08:27 +0530
commitb21766ec3c5daa584762e822abd229a312907f3a (patch)
treed1577db994012361a517dfd17d3e35167699404d
parent3653260ec2f42cdb56564e51fbeb853a92d35a6d (diff)
downloadglib-b21766ec3c5daa584762e822abd229a312907f3a.tar.gz
goption.c: Simplfy parse_short_option()
-rw-r--r--glib/goption.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/glib/goption.c b/glib/goption.c
index a351f84cb..c974598c8 100644
--- a/glib/goption.c
+++ b/glib/goption.c
@@ -1543,23 +1543,14 @@ parse_short_option (GOptionContext *context,
if (idx < *argc - 1)
{
- if (!OPTIONAL_ARG (&group->entries[j]))
+ if (OPTIONAL_ARG (&group->entries[j]) && ((*argv)[idx + 1][0] == '-'))
+ value = NULL;
+ else
{
value = (*argv)[idx + 1];
add_pending_null (context, &((*argv)[idx + 1]), NULL);
*new_idx = idx + 1;
}
- else
- {
- if ((*argv)[idx + 1][0] == '-')
- value = NULL;
- else
- {
- value = (*argv)[idx + 1];
- add_pending_null (context, &((*argv)[idx + 1]), NULL);
- *new_idx = idx + 1;
- }
- }
}
else if (idx >= *argc - 1 && OPTIONAL_ARG (&group->entries[j]))
value = NULL;