[PATCH twm 3/3] Add extra sanity checking to avoid possible NULL dereferences

Peter Hutterer peter.hutterer at who-t.net
Thu May 12 16:43:22 PDT 2011


On Wed, May 11, 2011 at 10:44:23PM -0700, Jeremy Huddleston wrote:
> 
> menus.c:569:10: warning: Access to field 'func' results in a dereference of a null pointer (loaded from variable 'ActiveItem')
>             if (ActiveItem->func != F_TITLE && !ActiveItem->state)
>                 ^~~~~~~~~~
> 
> Found-by: clang static analyzer
> Signed-off-by: Jeremy Huddleston <jeremyhu at apple.com>


Acked-by: Peter Hutterer <peter.hutterer at who-t.net>

for all three

Cheers,
  Peter

> ---
>  src/menus.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/menus.c b/src/menus.c
> index 395426f..1bf32bf 100644
> --- a/src/menus.c
> +++ b/src/menus.c
> @@ -569,7 +569,7 @@ UpdateMenu()
>  	if (!done)
>  	{
>  	    ActiveItem = mi;
> -	    if (ActiveItem->func != F_TITLE && !ActiveItem->state)
> +	    if (ActiveItem && ActiveItem->func != F_TITLE && !ActiveItem->state)
>  	    {
>  		ActiveItem->state = 1;
>  		PaintEntry(ActiveMenu, ActiveItem, False);
> @@ -577,7 +577,7 @@ UpdateMenu()
>  	}
>  
>  	/* now check to see if we were over the arrow of a pull right entry */
> -	if (ActiveItem->func == F_MENU && 
> +	if (ActiveItem && ActiveItem->func == F_MENU && 
>  	    ((ActiveMenu->width - x) < (ActiveMenu->width >> 1)))
>  	{
>  	    MenuRoot *save = ActiveMenu;
> -- 
> 1.7.4.4
> 
> 


More information about the xorg-devel mailing list