On 07/10/13 08:58 PM, Peter Hutterer wrote:
if the flag is "-w", then argv[i][1] is 'w' and unlikely to be a digit.
Access [2] instead, which is either \0 or an actual digit.

X.Org Bug 66344 <http://bugs.freedesktop.org/show_bug.cgi?id=66344>

Signed-off-by: Peter Hutterer <[email protected]>
---
  xkbcomp.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xkbcomp.c b/xkbcomp.c
index 440d542..fb5dec2 100644
--- a/xkbcomp.c
+++ b/xkbcomp.c
@@ -579,8 +579,8 @@ parseArgs(int argc, char *argv[])
              if ((i >= (argc - 1)) || (!isdigit(argv[i + 1][0])))
              {
                  warningLevel = 0;
-                if (isdigit(argv[i][1]))
-                    if (sscanf(&argv[i][1], "%i", &itmp) == 1)
+                if (isdigit(argv[i][2]))
+                    if (sscanf(&argv[i][2], "%i", &itmp) == 1)
                          warningLevel = itmp;
              }
              else


Reviewed-by: Alan Coopersmith <[email protected]>

--
        -Alan Coopersmith-              [email protected]
         Oracle Solaris Engineering - http://blogs.oracle.com/alanc
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to