This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Prevent out of bound access for multilib_options


On Wed, Apr 09, 2014 at 10:00:38PM +0800, Kito Cheng wrote:
> `q` will out of bound access if `*q` already reach the end of
> multilib_options, so check it before increment to prevent condition
> check part out of bound access.
> 
> btw, this bug is detected by address sanitizer.
> 
> 
> 2014-04-09  Kito Cheng  <kito@0xlab.org>
>     * gcc.c (used_arg): Prevent out of bound access for multilib_options.

There should be a newline between date/name/email line and
* gcc.c ... and the * gcc.c line should be indented by tab.

> diff --git a/gcc/gcc.c b/gcc/gcc.c
> index 5cb485a..c8ab7d6 100644
> --- a/gcc/gcc.c
> +++ b/gcc/gcc.c
> @@ -7490,7 +7490,7 @@ used_arg (const char *p, int len)
>         {
>           const char *r;
> 
> -         for (q = multilib_options; *q != '\0'; q++)
> +         for (q = multilib_options; *q != '\0'; *q && q++)
>             {
>               while (*q == ' ')
>                 q++;

Ok for trunk and 4.9.1.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]