* problem report #99
@ 2008-12-01 15:57 Dan Nicolaescu
2008-12-01 17:45 ` Davis Herring
0 siblings, 1 reply; 3+ messages in thread
From: Dan Nicolaescu @ 2008-12-01 15:57 UTC (permalink / raw)
To: emacs-devel
CID: 99
Checker: UNINIT (help)
File: base/src/emacs/src/keyboard.c
Function: kbd_buffer_get_event
Description: Using uninitialized value "bar_window" in call to function "make_lispy_movement"
Event var_decl: Declared variable "bar_window" without initializer
Also see events: [uninit_use_in_call]
4259 Lisp_Object bar_window;
4260 enum scroll_bar_part part;
4261 Lisp_Object x, y;
4262 unsigned long time;
4263
4264 *kbp = current_kboard;
4265 /* Note that this uses F to determine which terminal to look at.
4266 If there is no valid info, it does not store anything
4267 so x remains nil. */
4268 x = Qnil;
4269
4270 /* XXX Can f or mouse_position_hook be NULL here? */
At conditional (1): "f != 0" taking true path
At conditional (2): "((f)->terminal)->mouse_position_hook != 0" taking false path
4271 if (f && FRAME_TERMINAL (f)->mouse_position_hook)
4272 (*FRAME_TERMINAL (f)->mouse_position_hook) (&f, 0, &bar_window,
4273 &part, &x, &y, &time);
4274
4275 obj = Qnil;
4276
4277 /* Decide if we should generate a switch-frame event. Don't
4278 generate switch-frame events for motion outside of all Emacs
4279 frames. */
At conditional (3): "x != Qnil" taking true path
At conditional (4): "f != 0" taking true path
4280 if (!NILP (x) && f)
4281 {
4282 Lisp_Object frame;
4283
4284 frame = FRAME_FOCUS_FRAME (f);
At conditional (5): "frame == Qnil" taking true path
4285 if (NILP (frame))
4286 XSETFRAME (frame, f);
4287
At conditional (6): "frame != internal_last_event_frame" taking true path
At conditional (7): "frame != selected_frame" taking true path
4288 if (! EQ (frame, internal_last_event_frame)
4289 && !EQ (frame, selected_frame))
4290 obj = make_lispy_switch_frame (frame);
4291 internal_last_event_frame = frame;
4292 }
4293
4294 /* If we didn't decide to make a switch-frame event, go ahead and
4295 return a mouse-motion event. */
At conditional (8): "x != Qnil" taking true path
At conditional (9): "obj == Qnil" taking true path
4296 if (!NILP (x) && NILP (obj))
Event uninit_use_in_call: Using uninitialized value "bar_window" in call to function "make_lispy_movement" [model]
Also see events: [var_decl]
4297 obj = make_lispy_movement (f, bar_window, part, x, y, time);
4298 }
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: problem report #99
2008-12-01 15:57 problem report #99 Dan Nicolaescu
@ 2008-12-01 17:45 ` Davis Herring
2008-12-01 17:49 ` Davis Herring
0 siblings, 1 reply; 3+ messages in thread
From: Davis Herring @ 2008-12-01 17:45 UTC (permalink / raw)
To: Dan Nicolaescu; +Cc: emacs-devel
> 4265 /* Note that this uses F to determine which terminal to look
> at.
> 4266 If there is no valid info, it does not store anything
> 4267 so x remains nil. */
> 4268 x = Qnil;
> 4269
> 4270 /* XXX Can f or mouse_position_hook be NULL here? */
This comment says it all. When this is skipped:
> At conditional (1): "f != 0" taking true path
> At conditional (2): "((f)->terminal)->mouse_position_hook != 0" taking
> false path
>
> 4271 if (f && FRAME_TERMINAL (f)->mouse_position_hook)
> 4272 (*FRAME_TERMINAL (f)->mouse_position_hook) (&f, 0,
> &bar_window,
> 4273 &part, &x, &y,
> &time);
...then this can't happen:
> At conditional (8): "x != Qnil" taking true path
> At conditional (9): "obj == Qnil" taking true path
>
> 4296 if (!NILP (x) && NILP (obj))
>
> Event uninit_use_in_call: Using uninitialized value "bar_window" in call
> to function "make_lispy_movement" [model]
> Also see events: [var_decl]
>
> 4297 obj = make_lispy_movement (f, bar_window, part, x, y, time);
> 4298 }
No bug.
Davis
--
This product is sold by volume, not by mass. If it appears too dense or
too sparse, it is because mass-energy conversion has occurred during
shipping.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: problem report #99
2008-12-01 17:45 ` Davis Herring
@ 2008-12-01 17:49 ` Davis Herring
0 siblings, 0 replies; 3+ messages in thread
From: Davis Herring @ 2008-12-01 17:49 UTC (permalink / raw)
To: Dan Nicolaescu; +Cc: emacs-devel
My analysis for the "first #99" applies to all four of them, since they
analyze the same portion of code; perhaps that's why they got the same
number. Anyway: #2: no bug, #3: no bug, and #4: no bug.
Davis
--
This product is sold by volume, not by mass. If it appears too dense or
too sparse, it is because mass-energy conversion has occurred during
shipping.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-12-01 17:49 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-12-01 15:57 problem report #99 Dan Nicolaescu
2008-12-01 17:45 ` Davis Herring
2008-12-01 17:49 ` Davis Herring
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).