Tolerate specifying -BoolParam 0 and similar

This is needed by vncserver which doesn't know which parameters are
boolean, and it cannot use the -Param=Value form as that isn't tolerated
by the Xorg code.
This commit is contained in:
Pierre Ossman
2020-09-18 10:44:32 +02:00
committed by Lauri Kasanen
parent 3528e358cc
commit 45e44a66e5
3 changed files with 31 additions and 0 deletions

View File

@@ -639,6 +639,20 @@ ddxProcessArgument(int argc, char *argv[], int i)
exit(0);
}
/* We need to resolve an ambiguity for booleans */
if (argv[i][0] == '-' && i+1 < argc &&
vncIsParamBool(&argv[i][1])) {
if ((strcasecmp(argv[i+1], "0") == 0) ||
(strcasecmp(argv[i+1], "1") == 0) ||
(strcasecmp(argv[i+1], "true") == 0) ||
(strcasecmp(argv[i+1], "false") == 0) ||
(strcasecmp(argv[i+1], "yes") == 0) ||
(strcasecmp(argv[i+1], "no") == 0)) {
vncSetParam(&argv[i][1], argv[i+1]);
return 2;
}
}
if (vncSetParamSimple(argv[i]))
return 1;