[PATCH] xkb: don't call atoi(NULL) when parsing argv

Alan Coopersmith alan.coopersmith at oracle.com
Mon Jul 1 16:30:26 PDT 2013


On 07/ 1/13 10:39 AM, Julien Cristau wrote:
> If the -ardelay or -arinterval options have no argument, there's no
> point trying to read it.
>
> See
> http://www.forallsecure.com/bug-reports/feb3db57fc206d8df22ca53a6907f74973876272/
>
> Reported-by: Alexandre Rebert <alexandre at cmu.edu>
> Signed-off-by: Julien Cristau <jcristau at debian.org>
> ---
>   xkb/xkbInit.c |    6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/xkb/xkbInit.c b/xkb/xkbInit.c
> index 5308a29..f72655f 100644
> --- a/xkb/xkbInit.c
> +++ b/xkb/xkbInit.c
> @@ -759,13 +759,15 @@ XkbProcessArguments(int argc, char *argv[], int i)
>       if ((strcmp(argv[i], "-ardelay") == 0) || (strcmp(argv[i], "-ar1") == 0)) { /* -ardelay int */
>           if (++i >= argc)
>               UseMsg();
> -        XkbDfltRepeatDelay = (long) atoi(argv[i]);
> +        else
> +            XkbDfltRepeatDelay = (long) atoi(argv[i]);
>           return 2;
>       }
>       if ((strcmp(argv[i], "-arinterval") == 0) || (strcmp(argv[i], "-ar2") == 0)) {      /* -arinterval int */
>           if (++i >= argc)
>               UseMsg();
> -        XkbDfltRepeatInterval = (long) atoi(argv[i]);
> +        else
> +            XkbDfltRepeatInterval = (long) atoi(argv[i]);
>           return 2;
>       }
>       return 0;
>

Reviewed-by: Alan Coopersmith <alan.coopersmith at oracle.com>

-- 
	-Alan Coopersmith-              alan.coopersmith at oracle.com
	 Oracle Solaris Engineering - http://blogs.oracle.com/alanc


More information about the xorg-devel mailing list