[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re[4]: Speedbar segv
From: |
Eric M. Ludlam |
Subject: |
Re[4]: Speedbar segv |
Date: |
Sun, 3 Jun 2001 12:57:04 -0400 |
>>> Gerd Moellmann <address@hidden> seems to think that:
>"Eric M. Ludlam" <address@hidden> writes:
[ ... ]
>
>Very strange; a wild pointer maybe?
>
>Can you reproduce this at will? If so, could you please set a
>breakpoint on realize_basic_faces, and step through the code,
>displaying the value of interrupt_input_blocked at each step?
Sorry about the long delay. Here is some gdb output. I updated my
machine (Now SMP), OS (Red Hat 7.1), and Emacs sources (this past
week), and the problem continued.
What I managed to find before getting lost in the stack is that in
realize_basic_faces, this code exists:
--------
if (menu_face_change_count)
{
--menu_face_change_count;
#ifdef USE_X_TOOLKIT
x_update_menu_appearance (f);
#endif
}
success_p = 1;
}
unbind_to (count, Qnil);
UNBLOCK_INPUT;
return success_p;
}
-------
and after x_update_menu_appearace, GDB automatically started doing
some condition-case stuff, as though a menu error were being thrown.
EDE does dynamic menus so it's possible that something in my
filesystem (which EDE checks as it tries to build a menu) is causing
the condition-case to get thrown.
I tried Eli's watchpoint idea, but the value changes about 10000 times
and I could find a way to do conditional watch points from the info
manual.
Since updating my machine, OS, and sources I have seen other segv's
using Ediff, and Info. I'll see if I can verify those with GDB in a
different email.
I hope this helps somehow.
Eric
---------------------------------------------------------------------
(gdb) p interrupt_input_blocked
$9 = 0
(gdb) n
6021 int count = BINDING_STACK_SIZE ();
(gdb) p interrupt_input_blocked
$10 = 0
(gdb) n
6026 specbind (Qscalable_fonts_allowed, Qt);
(gdb) p interrupt_input_blocked
$11 = 0
(gdb) n
6021 int count = BINDING_STACK_SIZE ();
(gdb) p interrupt_input_blocked
$12 = 0
(gdb) n
6019 {
(gdb)
6025 BLOCK_INPUT;
(gdb) p interrupt_input_blocked
$13 = 0
(gdb) n
6026 specbind (Qscalable_fonts_allowed, Qt);
(gdb) p interrupt_input_blocked
$14 = 1
(gdb) n
6028 if (realize_default_face (f))
(gdb) p interrupt_input_blocked
$15 = 1
(gdb) n
6020 int success_p = 0;
(gdb) n
6021 int count = BINDING_STACK_SIZE ();
(gdb) p interrupt_input_blocked
$16 = 1
(gdb) n
6028 if (realize_default_face (f))
(gdb) p interrupt_input_blocked
$17 = 1
(gdb) n
6030 realize_named_face (f, Qmode_line, MODE_LINE_FACE_ID);
(gdb) p interrupt_input_blocked
$18 = 1
(gdb) n
6031 realize_named_face (f, Qtool_bar, TOOL_BAR_FACE_ID);
(gdb) p interrupt_input_blocked
$19 = 1
(gdb) n
6032 realize_named_face (f, Qfringe, BITMAP_AREA_FACE_ID);
(gdb) p interrupt_input_blocked
$20 = 1
(gdb) n
6033 realize_named_face (f, Qheader_line, HEADER_LINE_FACE_ID);
(gdb) p interrupt_input_blocked
$21 = 1
(gdb) n
6034 realize_named_face (f, Qscroll_bar, SCROLL_BAR_FACE_ID);
(gdb) p interrupt_input_blocked
$22 = 1
(gdb) n
6035 realize_named_face (f, Qborder, BORDER_FACE_ID);
(gdb) p interrupt_input_blocked
$23 = 1
(gdb) n
6036 realize_named_face (f, Qcursor, CURSOR_FACE_ID);
(gdb) p interrupt_input_blocked
$24 = 1
(gdb) n
6037 realize_named_face (f, Qmouse, MOUSE_FACE_ID);
(gdb) p interrupt_input_blocked
$25 = 1
(gdb) n
6038 realize_named_face (f, Qmenu, MENU_FACE_ID);
(gdb) p interrupt_input_blocked
$26 = 1
(gdb) n
6041 if (menu_face_change_count)
(gdb) p interrupt_input_blocked
$27 = 1
(gdb) n
6045 x_update_menu_appearance (f);
(gdb) p interrupt_input_blocked
$28 = 1
(gdb) n
6043 --menu_face_change_count;
(gdb) p interrupt_input_blocked
$29 = 1
(gdb) n
6045 x_update_menu_appearance (f);
(gdb) p interrupt_input_blocked
$30 = 1
(gdb) n
6043 --menu_face_change_count;
(gdb) p interrupt_input_blocked
$31 = 1
(gdb) n
6045 x_update_menu_appearance (f);
(gdb) p interrupt_input_blocked
$32 = 1
(gdb) n
Fcondition_case (args=1486754180) at eval.c:1192
1192 if (!NILP (h.var))
(gdb) p interrupt_input_blocked
$33 = 0
(gdb) n
1194 val = Fprogn (Fcdr (h.chosen_clause));
(gdb) p interrupt_input_blocked
$34 = 0
(gdb) n
1199 unbind_to (c.pdlcount, Qnil);
(gdb) p interrupt_input_blocked
$35 = 0
(gdb) n
1194 val = Fprogn (Fcdr (h.chosen_clause));
(gdb) p interrupt_input_blocked
$36 = 0
(gdb) n
1199 unbind_to (c.pdlcount, Qnil);
(gdb) p interrupt_input_blocked
$37 = 0
(gdb) n
1200 return val;
(gdb) p interrupt_input_blocked
$38 = 0
(gdb) n
1214 return val;
(gdb) p interrupt_input_blocked
$39 = 0
(gdb) n
1215 }
(gdb) p interrupt_input_blocked
$40 = 0
(gdb) n
Fbyte_code (bytestr=944094276, vector=1213363592, maxdepth=5) at bytecode.c:900
900 break;
(gdb) p interrupt_input_blocked
$41 = 0
(gdb) n
1685 AFTER_POTENTIAL_GC ();
(gdb) p interrupt_input_blocked
$42 = 0
(gdb) n
1686 break;
(gdb) p interrupt_input_blocked
$43 = 0
(gdb) n
494 op = FETCH;
(gdb) p interrupt_input_blocked
$44 = 0
(gdb) n
497 switch (op)
(gdb) p interrupt_input_blocked
$45 = 0
(gdb) n
494 op = FETCH;
(gdb) p interrupt_input_blocked
$46 = 0
(gdb) n
497 switch (op)
(gdb) p interrupt_input_blocked
$47 = 0
(gdb) n
542 MAYBE_GC ();
(gdb) up
#1 0x08122b3e in funcall_lambda (fun=1210792096, nargs=3,
arg_vector=0xbfffd704) at eval.c:2847
2847 val = Fbyte_code (XVECTOR (fun)->contents[COMPILED_BYTECODE],
(gdb) up
#2 0x08122650 in Ffuncall (nargs=4, args=0xbfffd700) at eval.c:2703
2703 val = funcall_lambda (fun, numargs, args + 1);
(gdb) up
#3 0x08148814 in Fbyte_code (bytestr=944085404, vector=1213265968, maxdepth=6)
at bytecode.c:716
716 TOP = Ffuncall (op + 1, &TOP);
(gdb) where 30
#0 Fbyte_code (bytestr=944094276, vector=1213363592, maxdepth=5)
at bytecode.c:542
#1 0x08122b3e in funcall_lambda (fun=1210792096, nargs=3,
arg_vector=0xbfffd704) at eval.c:2847
#2 0x08122650 in Ffuncall (nargs=4, args=0xbfffd700) at eval.c:2703
#3 0x08148814 in Fbyte_code (bytestr=944085404, vector=1213265968, maxdepth=6)
at bytecode.c:716
#4 0x08122b3e in funcall_lambda (fun=1212248376, nargs=2,
arg_vector=0xbfffd7c0) at eval.c:2847
#5 0x08122829 in apply_lambda (fun=1212248376, args=1482278340, eval_flag=1)
at eval.c:2766
#6 0x08121c46 in Feval (form=1482278332) at eval.c:2055
#7 0x0811fa6d in Fprogn (args=1482278300) at eval.c:431
#8 0x08122b0b in funcall_lambda (fun=1482278284, nargs=2,
arg_vector=0xbfffd9d4) at eval.c:2840
#9 0x081226b9 in Ffuncall (nargs=3, args=0xbfffd9d0) at eval.c:2712
#10 0x08148814 in Fbyte_code (bytestr=945314732, vector=1213729280, maxdepth=5)
at bytecode.c:716
#11 0x08122b3e in funcall_lambda (fun=1213729424, nargs=1,
arg_vector=0xbfffdaf4) at eval.c:2847
#12 0x08122650 in Ffuncall (nargs=2, args=0xbfffdaf0) at eval.c:2703
#13 0x08148814 in Fbyte_code (bytestr=945314620, vector=1213810448, maxdepth=6)
at bytecode.c:716
---Type <return> to continue, or q <return> to quit---
#14 0x08122b3e in funcall_lambda (fun=1213810680, nargs=1,
arg_vector=0xbfffdc14) at eval.c:2847
#15 0x08122650 in Ffuncall (nargs=2, args=0xbfffdc10) at eval.c:2703
#16 0x08148814 in Fbyte_code (bytestr=945314476, vector=1213492064, maxdepth=2)
at bytecode.c:716
#17 0x08122b3e in funcall_lambda (fun=1213811240, nargs=0,
arg_vector=0xbfffdd30) at eval.c:2847
#18 0x08122650 in Ffuncall (nargs=1, args=0xbfffdd2c) at eval.c:2703
#19 0x08148814 in Fbyte_code (bytestr=945271684, vector=1213676920,
maxdepth=10) at bytecode.c:716
#20 0x08122b3e in funcall_lambda (fun=1212953952, nargs=1,
arg_vector=0xbfffddf0) at eval.c:2847
#21 0x08122829 in apply_lambda (fun=1212953952, args=1481632148, eval_flag=1)
at eval.c:2766
#22 0x08121c46 in Feval (form=1482128252) at eval.c:2055
#23 0x081227dc in apply_lambda (fun=1212028800, args=1482128268, eval_flag=1)
at eval.c:2753
#24 0x08121c46 in Feval (form=1482128276) at eval.c:2055
#25 0x0811fa6d in Fprogn (args=1482128284) at eval.c:431
#26 0x08122b0b in funcall_lambda (fun=1482127828, nargs=1,
arg_vector=0xbfffe0e0) at eval.c:2840
#27 0x08122829 in apply_lambda (fun=1482127828, args=1486754524, eval_flag=1)
at eval.c:2766
---Type <return> to continue, or q <return> to quit---
#28 0x08121ce3 in Feval (form=1486754516) at eval.c:2071
#29 0x08120bb4 in internal_condition_case_1 (bfun=0x81217e8 <Feval>,
arg=1486754516, handlers=405276388,
hfun=0x80d6cec <menu_item_eval_property_1>) at eval.c:1307
(More stack frames follow...)
(gdb)
- Re[4]: Speedbar segv,
Eric M. Ludlam <=