[PATCH:setxkbmap] Bug 34117: setxkbmap -I dir not accepted, despite man page

Alan Coopersmith alan.coopersmith at oracle.com
Wed Feb 9 23:52:13 PST 2011


Easy enough to accept the syntax documented in the man page, so accept
the -I flag with or without a space between -I and the directory argument.

https://bugs.freedesktop.org/show_bug.cgi?id=34117

Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
---
 setxkbmap.c |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/setxkbmap.c b/setxkbmap.c
index e812a9c..868b727 100644
--- a/setxkbmap.c
+++ b/setxkbmap.c
@@ -414,7 +414,16 @@ parseArgs(int argc, char **argv)
             usage(argc, argv);
             exit(0);
         }
-        else if (strpfx(argv[i], "-I"))
+        else if (streq(argv[i], "-I")) /* space between -I and path */
+        {
+            if ( ++i < argc ) {
+                ok = addToList(&szInclPath, &numInclPath, &inclPath, argv[i]);
+            } else {
+                ERR("Error!   Option \"-I\" requires an argument\n");
+                ok = False;
+            }
+        }
+        else if (strpfx(argv[i], "-I")) /* no space between -I and path */
             ok = addToList(&szInclPath, &numInclPath, &inclPath, &argv[i][2]);
         else if (streq(argv[i], "-keycodes"))
             ok = setOptString(&i, argc, argv, KEYCODES_NDX, FROM_CMD_LINE);
-- 
1.7.3.2



More information about the xorg-devel mailing list