Subject: bug#9947: closed (Re: bug#9947: valgrind warning: Conditional jump or move depends on uninitialised value(s) in note_mouse_highlight)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 03 Nov 2011 22:16:02 +0000

Your bug report

#9947: valgrind warning: Conditional jump or move depends on uninitialised value(s) in note_mouse_highlight

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
9947: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9947
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#9947: valgrind warning: Conditional jump or move depends on uninitialised value(s) in note_mouse_highlight
From: Eli Zaretskii <[email-masked]>
To: Dan Nicolaescu <[email-masked]>
Cc: [email-masked]
Date: Fri, 04 Nov 2011 00:12:41 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

> From: Dan Nicolaescu <[email-masked]>
> Date: Thu, 03 Nov 2011 17:41:27 -0400
> 
> 
> valgrind ./temacs -Q
> 
> gives this warning:
> 
> ==7776== Conditional jump or move depends on uninitialised value(s)
> ==7776==    at 0x4738C5: note_mouse_highlight (xdisp.c:26977)
> ==7776==    by 0x4F8682: note_mouse_movement (xterm.c:3833)
> ==7776==    by 0x4FCBB1: handle_one_xevent (xterm.c:6667)
> ==7776==    by 0x4FD815: XTread_socket (xterm.c:7148)
> ==7776==    by 0x5438DB: read_avail_input (keyboard.c:6821)
> ==7776==    by 0x544183: handle_async_input (keyboard.c:7149)
> ==7776==    by 0x5441A2: process_pending_signals (keyboard.c:7165)
> ==7776==    by 0x5AACF5: re_match_2_internal (regex.c:5888)
> ==7776==    by 0x5A6780: re_search_2 (regex.c:4481)
> ==7776==    by 0x5A57C5: re_search (regex.c:4262)
> ==7776==    by 0x59260A: fast_string_match (search.c:482)
> ==7776==    by 0x578870: Ffind_file_name_handler (fileio.c:286)
> ==7776== 
> 
> This is legitimate, the code is looking at the value of "area" inside a conditional:
> 
>       if (glyph == NULL
> [snip]
> 
> "area" is computed by this code:
>       /* Find the glyph under X/Y.  */
>       glyph = x_y_to_hpos_vpos (w, x, y, &hpos, &vpos, &dx, &dy, &area);
> 
> but "area" is not set when `x_y_to_hpos_vpos' return NULL.

Thanks, fixed.

Subject: valgrind warning: Conditional jump or move depends on uninitialised value(s) in note_mouse_highlight
From: Dan Nicolaescu <[email-masked]>
To: [email-masked]
Date: Thu, 03 Nov 2011 17:41:27 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

valgrind ./temacs -Q

gives this warning:

==7776== Conditional jump or move depends on uninitialised value(s)
==7776==    at 0x4738C5: note_mouse_highlight (xdisp.c:26977)
==7776==    by 0x4F8682: note_mouse_movement (xterm.c:3833)
==7776==    by 0x4FCBB1: handle_one_xevent (xterm.c:6667)
==7776==    by 0x4FD815: XTread_socket (xterm.c:7148)
==7776==    by 0x5438DB: read_avail_input (keyboard.c:6821)
==7776==    by 0x544183: handle_async_input (keyboard.c:7149)
==7776==    by 0x5441A2: process_pending_signals (keyboard.c:7165)
==7776==    by 0x5AACF5: re_match_2_internal (regex.c:5888)
==7776==    by 0x5A6780: re_search_2 (regex.c:4481)
==7776==    by 0x5A57C5: re_search (regex.c:4262)
==7776==    by 0x59260A: fast_string_match (search.c:482)
==7776==    by 0x578870: Ffind_file_name_handler (fileio.c:286)
==7776== 

This is legitimate, the code is looking at the value of "area" inside a conditional:

      if (glyph == NULL
[snip]

"area" is computed by this code:
      /* Find the glyph under X/Y.  */
      glyph = x_y_to_hpos_vpos (w, x, y, &hpos, &vpos, &dx, &dy, &area);

but "area" is not set when `x_y_to_hpos_vpos' return NULL.