[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: valgrind warnings [Re: Emacs bzr memory footprint]
From: |
Eli Zaretskii |
Subject: |
Re: valgrind warnings [Re: Emacs bzr memory footprint] |
Date: |
Fri, 28 Oct 2011 17:27:55 +0200 |
> From: Dan Nicolaescu <address@hidden>
> Cc: "Stephen J. Turnbull" <address@hidden>, address@hidden
> Date: Fri, 28 Oct 2011 10:38:03 -0400
>
> > Valgrind produces these warnings, maybe some of them are interesting:
> >
> > ==30382== Conditional jump or move depends on uninitialised value(s)
> > ==30382== at 0x4731E6: note_mouse_highlight (xdisp.c:26841)
> > ==30382== by 0x4F8682: note_mouse_movement (xterm.c:3830)
> > ==30382== by 0x4FCB2E: handle_one_xevent (xterm.c:6652)
> > ==30382== by 0x4FD792: XTread_socket (xterm.c:7133)
> > ==30382== by 0x5437F7: read_avail_input (keyboard.c:6821)
> > ==30382== by 0x54409F: handle_async_input (keyboard.c:7149)
> > ==30382== by 0x5440BE: process_pending_signals (keyboard.c:7165)
> > ==30382== by 0x62D713: wait_reading_process_output (process.c:4340)
> > ==30382== by 0x419ED2: sit_for (dispnew.c:5971)
> > ==30382== by 0x53AF87: read_char (keyboard.c:2687)
> > ==30382== by 0x548876: read_key_sequence (keyboard.c:9290)
> > ==30382== by 0x538709: command_loop_1 (keyboard.c:1447)
>
> This is because window_from_coordinates in note_mouse_highlight is
> passed "&part", where "part" is an uninitialized local variable.
> When !NILP(window) "part" is not touched, so it stays uninitialized.
That's not my reading of the code. Here's what happens in
window_from_coordinates:
window = Qnil;
cw.window = &window, cw.x = x, cw.y = y; cw.part = part;
foreach_window (f, check_window_containing, &cw);
So cw.part now holds "part", which is a pointer.
check_window_containing does this:
found = coordinates_in_window (w, cw->x, cw->y);
if (found != ON_NOTHING)
{
*cw->part = found;
XSETWINDOW (*cw->window, w);
So if it finds a window, it touches "part" through cw->part and sets
`window' (through cw->window) to a non-nil value. Now back in
window_from_coordinates:
if (NILP (window)
&& tool_bar_p
&& WINDOWP (f->tool_bar_window)
&& WINDOW_TOTAL_LINES (XWINDOW (f->tool_bar_window)) > 0
&& (coordinates_in_window (XWINDOW (f->tool_bar_window), x, y)
!= ON_NOTHING))
{
*part = ON_TEXT;
window = f->tool_bar_window;
}
If `window' is non-nil, "part" was already set inside
check_window_containing, so there's no need to set it again.
Am I missing something or did this tricky code dupe valgrind?
- Re: Emacs bzr memory footprint, (continued)
- Re: Emacs bzr memory footprint, Eli Zaretskii, 2011/10/28
- Re: Emacs bzr memory footprint, Stephen J. Turnbull, 2011/10/28
- Re: Emacs bzr memory footprint, Eli Zaretskii, 2011/10/28
- Re: Emacs bzr memory footprint, Stephen J. Turnbull, 2011/10/28
- Re: Emacs bzr memory footprint, Eli Zaretskii, 2011/10/28
- valgrind warnings [Re: Emacs bzr memory footprint], Dan Nicolaescu, 2011/10/28
- valgrind warnings [Re: Emacs bzr memory footprint], Stephen J. Turnbull, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Dan Nicolaescu, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Chong Yidong, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Eli Zaretskii, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint],
Eli Zaretskii <=
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Dan Nicolaescu, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Eli Zaretskii, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Eli Zaretskii, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Dan Nicolaescu, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Eli Zaretskii, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Ted Zlatanov, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Dan Nicolaescu, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Chong Yidong, 2011/10/28
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Andreas Schwab, 2011/10/29
- Re: valgrind warnings [Re: Emacs bzr memory footprint], Stefan Monnier, 2011/10/29