* Abort when creating frame
@ 2011-09-05 16:47 martin rudalics
2011-09-05 17:22 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: martin rudalics @ 2011-09-05 16:47 UTC (permalink / raw)
To: emacs-devel
With current trunk bootstrapped an hour ago
GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
of 2011-09-05 on NESTOR
I get the backtraces below.
It might be related to a change I introduced back in June: I now (#8)
run_window_configuration_change_hook when doing x_set_tool_bar_lines
something we didn't do earlier. Personally, I don't care whether we run
it but since adding/removing the toolbar changes the sizes of window(s)
it should be run, in principle. But maybe something hasn't been set up
yet correctly so the abort triggers ...
martin
(gdb) bt
#0 w32_abort () at w32fns.c:7182
#1 0x011e5ef1 in bidi_initialize () at bidi.c:762
#2 0x011e5fe3 in bidi_init_it (charpos=1, bytepos=1, frame_window_p=0,
bidi_it=0x82e978) at bidi.c:801
#3 0x010f220f in init_iterator (it=0x82e3c0, w=0x2fed800, charpos=1,
bytepos=1, row=0x0, base_face_id=DEFAULT_FACE_ID) at xdisp.c:2628
#4 0x011029b4 in resize_mini_window (w=0x2fed800, exact_p=1) at xdisp.c:9847
#5 0x0119ca74 in do_switch_frame (frame=56233989, track=1, for_deletion=0,
norecord=50116658) at frame.c:829
#6 0x0119cc4d in Fselect_frame (frame=56233989, norecord=50116658)
at frame.c:874
#7 0x0114a518 in select_frame_norecord (frame=56233989) at window.c:2921
#8 0x0114a618 in run_window_configuration_change_hook (f=0x35a1000)
at window.c:2946
#9 0x0116dea1 in x_set_tool_bar_lines (f=0x35a1000, value=4, oldval=50116634)
at w32fns.c:1635
#10 0x011a0c82 in x_set_frame_parameters (f=0x35a1000, alist=50116634)
at frame.c:2924
#11 0x011a2f71 in x_default_parameter (f=0x35a1000, alist=50097526,
prop=50327154, deflt=4, xprop=0x0, xclass=0x0, type=RES_TYPE_NUMBER)
at frame.c:3929
#12 0x01173d04 in Fx_create_frame (parameters=50097526) at w32fns.c:4249
#13 0x01022853 in Ffuncall (nargs=2, args=0x82f020) at eval.c:2966
#14 0x010c92eb in exec_byte_code (bytestr=19252057, vector=19252077,
maxdepth=16, args_template=50116634, nargs=0, args=0x0) at bytecode.c:785
#15 0x01023172 in funcall_lambda (fun=19252021, nargs=1, arg_vector=0x82f264)
at eval.c:3197
#16 0x01022a70 in Ffuncall (nargs=2, args=0x82f260) at eval.c:3015
#17 0x010c92eb in exec_byte_code (bytestr=19577001, vector=19577021,
maxdepth=20, args_template=50116634, nargs=0, args=0x0) at bytecode.c:785
#18 0x01023172 in funcall_lambda (fun=19576973, nargs=1, arg_vector=0x82f4b4)
at eval.c:3197
#19 0x01022a70 in Ffuncall (nargs=2, args=0x82f4b0) at eval.c:3015
#20 0x010c92eb in exec_byte_code (bytestr=19574297, vector=19574317,
maxdepth=24, args_template=50116634, nargs=0, args=0x0) at bytecode.c:785
#21 0x01023172 in funcall_lambda (fun=19574269, nargs=0, arg_vector=0x82f704)
at eval.c:3197
#22 0x01022a70 in Ffuncall (nargs=1, args=0x82f700) at eval.c:3015
#23 0x010c92eb in exec_byte_code (bytestr=19271889, vector=19271909,
maxdepth=72, args_template=0, nargs=0, args=0x82f988) at bytecode.c:785
#24 0x01022ebb in funcall_lambda (fun=19271861, nargs=0, arg_vector=0x82f988)
at eval.c:3131
#25 0x01022a70 in Ffuncall (nargs=1, args=0x82f984) at eval.c:3015
#26 0x010c92eb in exec_byte_code (bytestr=19269065, vector=19269085,
maxdepth=32, args_template=0, nargs=0, args=0x82fb40) at bytecode.c:785
#27 0x01022ebb in funcall_lambda (fun=19269037, nargs=0, arg_vector=0x82fb40)
at eval.c:3131
#28 0x01022cff in apply_lambda (fun=19269037, args=50116634) at eval.c:3074
#29 0x01021838 in eval_sub (form=50726046) at eval.c:2359
#30 0x0102107c in Feval (form=50726046, lexical=50116634) at eval.c:2168
#31 0x01004699 in top_level_2 () at keyboard.c:1166
#32 0x0101feb1 in internal_condition_case (bfun=0x100467d <top_level_2>,
handlers=50174362, hfun=0x10042fc <cmd_error>) at eval.c:1491
#33 0x010046cb in top_level_1 (ignore=50116634) at keyboard.c:1174
#34 0x0101f987 in internal_catch (tag=50172386, func=0x100469b <top_level_1>,
arg=50116634) at eval.c:1248
#35 0x01004606 in command_loop () at keyboard.c:1129
#36 0x01003f32 in recursive_edit_1 () at keyboard.c:756
#37 0x0100407c in Frecursive_edit () at keyboard.c:820
#38 0x0100275e in main (argc=1, argv=0xa327b8) at emacs.c:1704
Lisp Backtrace:
"x-create-frame" (0x82f024)
"x-create-frame-with-faces" (0x82f264)
"make-frame" (0x82f4b4)
"frame-initialize" (0x82f704)
"command-line" (0x82f988)
"normal-top-level" (0x82fb40)
(gdb) bt full
#0 w32_abort () at w32fns.c:7182
button = 8577984
#1 0x011e5ef1 in bidi_initialize () at bidi.c:762
No locals.
#2 0x011e5fe3 in bidi_init_it (charpos=1, bytepos=1, frame_window_p=0,
bidi_it=0x82e978) at bidi.c:801
No locals.
#3 0x010f220f in init_iterator (it=0x82e3c0, w=0x2fed800, charpos=1,
bytepos=1, row=0x0, base_face_id=DEFAULT_FACE_ID) at xdisp.c:2628
highlight_region_p = 0
remapped_base_face_id = DEFAULT_FACE_ID
#4 0x011029b4 in resize_mini_window (w=0x2fed800, exact_p=1) at xdisp.c:9847
root = (struct window *) 0x2feda00
total_height = 9
max_height = 8745736
unit = 1
old_current_buffer = (struct buffer *) 0x2fd5000
it = {
window = 50255877,
w = 0x2fed800,
f = 0x2fedc00,
method = GET_FROM_BUFFER,
stop_charpos = 0,
prev_stop = 0,
base_level_stop = 0,
end_charpos = 1,
s = 0x0,
string_nchars = 0,
region_beg_charpos = -1,
region_end_charpos = -1,
redisplay_end_trigger_charpos = 0,
multibyte_p = 1,
header_line_p = 0,
string_from_display_prop_p = 0,
from_disp_prop_p = 0,
ellipsis_p = 0,
avoid_cursor_p = 0,
dp = 0x35ff400,
dpvec = 0x0,
dpend = 0x0,
dpvec_char_len = 0,
dpvec_face_id = 0,
saved_face_id = 0,
ctl_chars = {0 <repeats 16 times>},
start = {
pos = {
charpos = 1,
bytepos = 1
},
overlay_string_index = -1,
string_pos = {
charpos = -1,
bytepos = -1
},
dpvec_index = -1
},
current = {
pos = {
charpos = 1,
bytepos = 1
},
overlay_string_index = -1,
string_pos = {
charpos = -1,
bytepos = -1
},
dpvec_index = -1
},
n_overlay_strings = 0,
overlay_strings_charpos = 0,
overlay_strings = {0 <repeats 16 times>},
string_overlays = {0 <repeats 16 times>},
string = 50116634,
from_overlay = 0,
stack = {{
string = 0,
string_nchars = 0,
end_charpos = 0,
stop_charpos = 0,
prev_stop = 0,
base_level_stop = 0,
cmp_it = {
stop_pos = 0,
id = 0,
ch = 0,
rule_idx = 0,
lookback = 0,
nglyphs = 0,
reversed_p = 0,
charpos = 0,
nchars = 0,
nbytes = 0,
from = 0,
to = 0,
width = 0
},
face_id = 0,
u = {
image = {
object = 0,
slice = {
x = 0,
y = 0,
width = 0,
height = 0
},
image_id = 0
},
comp = {
object = 0
},
stretch = {
object = 0
}
},
position = {
charpos = 0,
bytepos = 0
},
current = {
pos = {
charpos = 0,
bytepos = 0
},
overlay_string_index = 0,
string_pos = {
charpos = 0,
bytepos = 0
},
dpvec_index = 0
},
from_overlay = 0,
area = LEFT_MARGIN_AREA,
method = GET_FROM_BUFFER,
paragraph_embedding = NEUTRAL_DIR,
multibyte_p = 0,
string_from_display_prop_p = 0,
display_ellipsis_p = 0,
avoid_cursor_p = 0,
bidi_p = 0,
from_disp_prop_p = 0,
line_wrap = TRUNCATE,
voffset = 0,
space_width = 0,
font_height = 0
}, {
string = 0,
string_nchars = 0,
end_charpos = 0,
stop_charpos = 0,
prev_stop = 0,
base_level_stop = 0,
cmp_it = {
stop_pos = 0,
id = 0,
ch = 0,
rule_idx = 0,
lookback = 0,
nglyphs = 0,
reversed_p = 0,
charpos = 0,
nchars = 0,
nbytes = 0,
from = 0,
to = 0,
width = 0
},
face_id = 0,
u = {
image = {
object = 0,
slice = {
x = 0,
y = 0,
width = 0,
height = 0
},
image_id = 0
},
comp = {
object = 0
},
stretch = {
object = 0
}
},
position = {
charpos = 0,
bytepos = 0
},
current = {
pos = {
charpos = 0,
bytepos = 0
},
overlay_string_index = 0,
string_pos = {
charpos = 0,
bytepos = 0
},
dpvec_index = 0
},
from_overlay = 0,
area = LEFT_MARGIN_AREA,
method = GET_FROM_BUFFER,
paragraph_embedding = NEUTRAL_DIR,
multibyte_p = 0,
string_from_display_prop_p = 0,
display_ellipsis_p = 0,
avoid_cursor_p = 0,
bidi_p = 0,
from_disp_prop_p = 0,
line_wrap = TRUNCATE,
voffset = 0,
space_width = 0,
font_height = 0
}, {
string = 0,
string_nchars = 0,
end_charpos = 0,
stop_charpos = 0,
prev_stop = 0,
base_level_stop = 0,
cmp_it = {
stop_pos = 0,
id = 0,
ch = 0,
rule_idx = 0,
lookback = 0,
nglyphs = 0,
reversed_p = 0,
charpos = 0,
nchars = 0,
nbytes = 0,
from = 0,
to = 0,
width = 0
},
face_id = 0,
u = {
image = {
object = 0,
slice = {
x = 0,
y = 0,
width = 0,
height = 0
},
image_id = 0
},
comp = {
object = 0
},
stretch = {
object = 0
}
},
position = {
charpos = 0,
bytepos = 0
},
current = {
pos = {
charpos = 0,
bytepos = 0
},
overlay_string_index = 0,
string_pos = {
charpos = 0,
bytepos = 0
},
dpvec_index = 0
},
from_overlay = 0,
area = LEFT_MARGIN_AREA,
method = GET_FROM_BUFFER,
paragraph_embedding = NEUTRAL_DIR,
multibyte_p = 0,
string_from_display_prop_p = 0,
display_ellipsis_p = 0,
avoid_cursor_p = 0,
bidi_p = 0,
from_disp_prop_p = 0,
line_wrap = TRUNCATE,
voffset = 0,
space_width = 0,
font_height = 0
}, {
string = 0,
string_nchars = 0,
end_charpos = 0,
stop_charpos = 0,
prev_stop = 0,
base_level_stop = 0,
cmp_it = {
stop_pos = 0,
id = 0,
ch = 0,
rule_idx = 0,
lookback = 0,
nglyphs = 0,
reversed_p = 0,
charpos = 0,
nchars = 0,
nbytes = 0,
from = 0,
to = 0,
width = 0
},
face_id = 0,
u = {
image = {
object = 0,
slice = {
x = 0,
y = 0,
width = 0,
height = 0
},
image_id = 0
},
comp = {
object = 0
},
stretch = {
object = 0
}
},
position = {
charpos = 0,
bytepos = 0
},
current = {
pos = {
charpos = 0,
bytepos = 0
},
overlay_string_index = 0,
string_pos = {
charpos = 0,
bytepos = 0
},
dpvec_index = 0
},
from_overlay = 0,
area = LEFT_MARGIN_AREA,
method = GET_FROM_BUFFER,
paragraph_embedding = NEUTRAL_DIR,
multibyte_p = 0,
string_from_display_prop_p = 0,
display_ellipsis_p = 0,
avoid_cursor_p = 0,
bidi_p = 0,
from_disp_prop_p = 0,
line_wrap = TRUNCATE,
voffset = 0,
space_width = 0,
font_height = 0
}, {
string = 0,
string_nchars = 0,
end_charpos = 0,
stop_charpos = 0,
prev_stop = 0,
base_level_stop = 0,
cmp_it = {
stop_pos = 0,
id = 0,
ch = 0,
rule_idx = 0,
lookback = 0,
nglyphs = 0,
reversed_p = 0,
charpos = 0,
nchars = 0,
nbytes = 0,
from = 0,
to = 0,
width = 0
},
face_id = 0,
u = {
image = {
object = 0,
slice = {
x = 0,
y = 0,
width = 0,
height = 0
},
image_id = 0
},
comp = {
object = 0
},
stretch = {
object = 0
}
},
position = {
charpos = 0,
bytepos = 0
},
current = {
pos = {
charpos = 0,
bytepos = 0
},
overlay_string_index = 0,
string_pos = {
charpos = 0,
bytepos = 0
},
dpvec_index = 0
},
from_overlay = 0,
area = LEFT_MARGIN_AREA,
method = GET_FROM_BUFFER,
paragraph_embedding = NEUTRAL_DIR,
multibyte_p = 0,
string_from_display_prop_p = 0,
display_ellipsis_p = 0,
avoid_cursor_p = 0,
bidi_p = 0,
from_disp_prop_p = 0,
line_wrap = TRUNCATE,
voffset = 0,
space_width = 0,
font_height = 0
}},
sp = 0,
selective = 0,
what = IT_CHARACTER,
face_id = -1,
selective_display_ellipsis_p = 1,
ctl_arrow_p = 1,
face_box_p = 0,
start_of_box_run_p = 0,
end_of_box_run_p = 0,
overlay_strings_at_end_processed_p = 0,
ignore_overlay_strings_at_pos_p = 0,
glyph_not_available_p = 0,
starts_in_middle_of_char_p = 0,
face_before_selective_p = 0,
constrain_row_ascent_descent_p = 0,
line_wrap = WINDOW_WRAP,
base_face_id = 0,
c = 0,
len = 0,
cmp_it = {
stop_pos = 0,
id = -1,
ch = 0,
rule_idx = 0,
lookback = 0,
nglyphs = 0,
reversed_p = 0,
charpos = 0,
nchars = 0,
nbytes = 0,
from = 0,
to = 0,
width = 0
},
char_to_display = 0,
glyphless_method = GLYPHLESS_DISPLAY_THIN_SPACE,
image_id = 0,
slice = {
x = 50116634,
y = 50116634,
width = 50116634,
height = 50116634
},
space_width = 50116634,
voffset = 0,
tab_width = 8,
font_height = 50116634,
object = 0,
position = {
charpos = 0,
bytepos = 0
},
truncation_pixel_width = 0,
continuation_pixel_width = 1,
first_visible_x = 0,
last_visible_x = 9,
last_visible_y = 1,
extra_line_spacing = 0,
max_extra_line_spacing = 0,
override_ascent = -1,
override_descent = 0,
override_boff = 0,
glyph_row = 0x0,
area = TEXT_AREA,
nglyphs = 1,
pixel_width = 0,
ascent = 0,
descent = 0,
max_ascent = 0,
max_descent = 0,
phys_ascent = 0,
phys_descent = 0,
max_phys_ascent = 0,
max_phys_descent = 0,
current_x = 0,
continuation_lines_width = 0,
eol_pos = {
charpos = 0,
bytepos = 0
},
current_y = 0,
first_vpos = 0,
vpos = 0,
hpos = 0,
left_user_fringe_bitmap = 0,
right_user_fringe_bitmap = 0,
left_user_fringe_face_id = 0,
right_user_fringe_face_id = 0,
bidi_p = 1,
bidi_it = {
bytepos = 0,
charpos = 0,
ch = 0,
nchars = 0,
ch_len = 0,
type = UNKNOWN_BT,
type_after_w1 = UNKNOWN_BT,
orig_type = UNKNOWN_BT,
resolved_level = 0,
invalid_levels = 0,
invalid_rl_levels = 0,
prev_was_pdf = 0,
prev = {
bytepos = 0,
charpos = 0,
type = UNKNOWN_BT,
type_after_w1 = UNKNOWN_BT,
orig_type = UNKNOWN_BT
},
last_strong = {
bytepos = 0,
charpos = 0,
type = UNKNOWN_BT,
type_after_w1 = UNKNOWN_BT,
orig_type = UNKNOWN_BT
},
next_for_neutral = {
bytepos = 0,
charpos = 0,
type = UNKNOWN_BT,
type_after_w1 = UNKNOWN_BT,
orig_type = UNKNOWN_BT
},
prev_for_neutral = {
bytepos = 0,
charpos = 0,
type = UNKNOWN_BT,
type_after_w1 = UNKNOWN_BT,
orig_type = UNKNOWN_BT
},
next_for_ws = {
bytepos = 0,
charpos = 0,
type = UNKNOWN_BT,
type_after_w1 = UNKNOWN_BT,
orig_type = UNKNOWN_BT
},
next_en_pos = 0,
ignore_bn_limit = 0,
sor = NEUTRAL_DIR,
scan_dir = 0,
disp_pos = 0,
disp_prop = 0,
stack_idx = 0,
level_stack = {{
level = 0,
override = NEUTRAL_DIR
} <repeats 64 times>},
string = {
lstring = 50116634,
s = 0x0,
schars = 0,
bufpos = 0,
from_disp_str = 0,
unibyte = 0
},
paragraph_dir = NEUTRAL_DIR,
separator_limit = 0,
first_elt = 0,
new_paragraph = 0,
frame_window_p = 0
},
paragraph_embedding = NEUTRAL_DIR
}
height = 8716904
start = {
charpos = 8578272,
bytepos = 8741012
}
f = (struct frame *) 0x2fedc00
window_height_changed_p = 0
#5 0x0119ca74 in do_switch_frame (frame=56233989, track=1, for_deletion=0,
norecord=50116658) at frame.c:829
sf = (struct frame *) 0x2fedc00
#6 0x0119cc4d in Fselect_frame (frame=56233989, norecord=50116658)
at frame.c:874
No locals.
#7 0x0114a518 in select_frame_norecord (frame=56233989) at window.c:2921
No locals.
#8 0x0114a618 in run_window_configuration_change_hook (f=0x35a1000)
at window.c:2946
count = 17
frame = 56233989
global_wcch = 50116634
#9 0x0116dea1 in x_set_tool_bar_lines (f=0x35a1000, value=4, oldval=50116634)
at w32fns.c:1635
delta = 1
nlines = 1
root_height = 9
root_window = 56236549
#10 0x011a0c82 in x_set_frame_parameters (f=0x35a1000, alist=50116634)
at frame.c:2924
param_index = 80
old_value = 50116634
prop = 50327154
val = 4
tail = 50116634
width = 10
height = 10
left = 50116610
top = 50116610
icon_left = 50116610
icon_top = 50116610
parms = (Lisp_Object *) 0x82eda0
values = (Lisp_Object *) 0x82ed80
i = 0
p = 1
left_no_change = 0
top_no_change = 0
icon_left_no_change = 0
icon_top_no_change = 0
size_changed = 0
gcpro1 = {
next = 0x2fcb81a,
var = 0xb,
nvars = 1
}
gcpro2 = {
next = 0xfa4,
var = 0x35a5000,
nvars = 1
}
#11 0x011a2f71 in x_default_parameter (f=0x35a1000, alist=50097526,
prop=50327154, deflt=4, xprop=0x0, xclass=0x0, type=RES_TYPE_NUMBER)
at frame.c:3929
tem = 4
#12 0x01173d04 in Fx_create_frame (parameters=50097526) at w32fns.c:4249
f = (struct frame *) 0x35a1000
frame = 56233989
tem = 50116610
name = 50116610
minibuffer_only = 0
window_prompting = 0
width = 50097702
height = 50097702
count = 16
gcpro1 = {
next = 0x12,
var = 0x2fc6e26,
nvars = 12
}
gcpro2 = {
next = 0x3020938,
var = 0x82f700,
nvars = 8580984
}
gcpro3 = {
next = 0x4,
var = 0x1228348,
nvars = 135
}
gcpro4 = {
next = 0x82f130,
var = 0x12ab9d1,
nvars = 20291274
}
display = 50116634
dpyinfo = (struct w32_display_info *) 0x14236c0
parent = 50116634
kb = (struct kboard *) 0x3498080
#13 0x01022853 in Ffuncall (nargs=2, args=0x82f020) at eval.c:2966
fun = 20687397
original_fun = 50367354
funcar = 21052936
numargs = 1
lisp_numargs = 8716288
val = 50097702
backtrace = {
next = 0x82f200,
function = 0x82f020,
args = 0x82f024,
nargs = 1,
debug_on_exit = 0
}
internal_args = (Lisp_Object *) 0x82f024
i = 8717832
#14 0x010c92eb in exec_byte_code (bytestr=19252057, vector=19252077,
maxdepth=16, args_template=50116634, nargs=0, args=0x0) at bytecode.c:785
count = 11
op = 1
vectorp = (Lisp_Object *) 0x125c370
stack = {
pc = 0x138ee0f "\024\316\216\317\f!\210\320\f\b\"\210\321\f\322\"\210\323\f\b\"\210\n\204W",
byte_string = 19252057,
byte_string_start = 0x138edd9 "\306\b!\020\307\b!\031\310\b\236\032\311\033\312\211\034\035\v\312\036\026\211\036\027\2030",
constants = 19252077,
next = 0x82f380
}
top = (Lisp_Object *) 0x82f020
result = 8581528
#15 0x01023172 in funcall_lambda (fun=19252021, nargs=1, arg_vector=0x82f264)
at eval.c:3197
val = 54215898
syms_left = 50116634
next = 50486706
lexenv = 50116634
count = 10
i = 1
optional = 1
rest = 0
#16 0x01022a70 in Ffuncall (nargs=2, args=0x82f260) at eval.c:3015
fun = 19252021
original_fun = 50677722
funcar = 1
numargs = 1
lisp_numargs = 16878580
val = 50116634
backtrace = {
next = 0x82f450,
function = 0x82f260,
args = 0x82f264,
nargs = 1,
debug_on_exit = 0
}
internal_args = (Lisp_Object *) 0x2fcb81a
i = 16878548
#17 0x010c92eb in exec_byte_code (bytestr=19577001, vector=19577021,
maxdepth=20, args_template=50116634, nargs=0, args=0x0) at bytecode.c:785
count = 5
op = 1
vectorp = (Lisp_Object *) 0x12ab8c0
stack = {
pc = 0x1359ff6 "\026\027\320\016\027!\210\016\035\311\036\036\211\036\037\203\354",
byte_string = 19577001,
byte_string_start = 0x1359f46 "\306\b\236\203,",
constants = 19577021,
next = 0x82f5d0
}
top = (Lisp_Object *) 0x82f260
result = 50097830
#18 0x01023172 in funcall_lambda (fun=19576973, nargs=1, arg_vector=0x82f4b4)
at eval.c:3197
val = 50097830
syms_left = 50116634
next = 50486706
lexenv = 50116634
count = 4
i = 1
optional = 1
rest = 0
#19 0x01022a70 in Ffuncall (nargs=2, args=0x82f4b0) at eval.c:3015
fun = 19576973
original_fun = 50722298
funcar = 2010802769
numargs = 1
lisp_numargs = 16878580
val = 8582296
backtrace = {
next = 0x82f6a0,
function = 0x82f4b0,
args = 0x82f4b4,
nargs = 1,
debug_on_exit = 0
}
internal_args = (Lisp_Object *) 0x2ffe2d2
i = 16878548
#20 0x010c92eb in exec_byte_code (bytestr=19574297, vector=19574317,
maxdepth=24, args_template=50116634, nargs=0, args=0x0) at bytecode.c:785
count = 4
op = 1
vectorp = (Lisp_Object *) 0x12aae30
stack = {
pc = 0x135a881 "\211\026\024\026\025\317\v!\023\320\016\024\321\322\n\321\"#\210\323\n!\210\312\211\022\207",
byte_string = 19574297,
byte_string_start = 0x135a850 "\b\205K",
constants = 19574317,
next = 0x82f850
}
top = (Lisp_Object *) 0x82f4b0
result = 1919906674
#21 0x01023172 in funcall_lambda (fun=19574269, nargs=0, arg_vector=0x82f704)
at eval.c:3197
val = 50116634
syms_left = 50116634
next = 50116634
lexenv = 50116634
count = 4
i = 0
optional = 0
rest = 0
#22 0x01022a70 in Ffuncall (nargs=1, args=0x82f700) at eval.c:3015
fun = 19574269
original_fun = 50805194
funcar = 19070729
numargs = 0
lisp_numargs = 17008440
val = 50116634
backtrace = {
next = 0x82f920,
function = 0x82f700,
args = 0x82f704,
nargs = 0,
debug_on_exit = 0
}
internal_args = (Lisp_Object *) 0x82f660
i = 4
#23 0x010c92eb in exec_byte_code (bytestr=19271889, vector=19271909,
maxdepth=72, args_template=0, nargs=0, args=0x82f988) at bytecode.c:785
count = 4
op = 0
vectorp = (Lisp_Object *) 0x12610e8
stack = {
pc = 0x138c05c "\210\201\210",
byte_string = 19271889,
byte_string_start = 0x138bdb0 "\306 \020\307\021\n\023\307\024\310\311!\211\307=\2040",
constants = 19271909,
next = 0x82faa0
}
top = (Lisp_Object *) 0x82f700
result = 7
#24 0x01022ebb in funcall_lambda (fun=19271861, nargs=0, arg_vector=0x82f988)
at eval.c:3131
val = 5
syms_left = 0
next = 51291237
lexenv = 51291232
count = 4
i = 20
optional = 16934031
rest = 8583384
#25 0x01022a70 in Ffuncall (nargs=1, args=0x82f984) at eval.c:3015
fun = 19271861
original_fun = 50804834
funcar = 50155520
numargs = 0
lisp_numargs = 16878580
val = 51291237
backtrace = {
next = 0x82fc90,
function = 0x82f984,
args = 0x82f988,
nargs = 0,
debug_on_exit = 0
}
internal_args = (Lisp_Object *) 0x34211ce
i = 16878548
#26 0x010c92eb in exec_byte_code (bytestr=19269065, vector=19269085,
maxdepth=32, args_template=0, nargs=0, args=0x82fb40) at bytecode.c:785
count = 3
op = 0
vectorp = (Lisp_Object *) 0x12605e0
stack = {
pc = 0x138ccf0 "\210)\210\346\347\350\"\210\351\317\352\"\211;\203\240",
byte_string = 19269065,
byte_string_start = 0x138cc69 "\b\203\b",
constants = 19269085,
next = 0x0
}
top = (Lisp_Object *) 0x82f984
result = 1
#27 0x01022ebb in funcall_lambda (fun=19269037, nargs=0, arg_vector=0x82fb40)
at eval.c:3131
val = 2090035902
syms_left = 0
next = 2090035780
lexenv = 8584188
count = 3
i = 8747888
optional = 8716288
rest = 2090328276
#28 0x01022cff in apply_lambda (fun=19269037, args=50116634) at eval.c:3074
args_left = 50116634
i = 0
numargs = 0
arg_vector = (Lisp_Object *) 0x82fb40
gcpro1 = {
next = 0x0,
var = 0xe00021a,
nvars = 0
}
gcpro2 = {
next = 0x0,
var = 0x8585e8,
nvars = 0
}
gcpro3 = {
next = 0x0,
var = 0x857b70,
nvars = 0
}
tem = 0
sa_count = 3
sa_must_free = 0
#29 0x01021838 in eval_sub (form=50726046) at eval.c:2359
fun = 19269037
val = 0
original_fun = 50803338
original_args = 50116634
funcar = 1
backtrace = {
next = 0x0,
function = 0x82fcc4,
args = 0x82fb40,
nargs = 0,
debug_on_exit = 0
}
gcpro1 = {
next = 0x1404f30,
var = 0x7c91253a,
nvars = 2009277088
}
gcpro2 = {
next = 0x852918,
var = 0x2fcb81a,
nvars = 3
}
gcpro3 = {
next = 0x1404f30,
var = 0x2fcb81a,
nvars = 50155520
}
#30 0x0102107c in Feval (form=50726046, lexical=50116634) at eval.c:2168
count = 2
#31 0x01004699 in top_level_2 () at keyboard.c:1166
No locals.
#32 0x0101feb1 in internal_condition_case (bfun=0x100467d <top_level_2>,
handlers=50174362, hfun=0x10042fc <cmd_error>) at eval.c:1491
val = 8726808
c = {
tag = 50116634,
val = 50116634,
next = 0x82fe10,
gcpro = 0x0,
jmp = {8584664, 2147336192, 32, 18, 8584460, 16907849, 8585184, 0, 8584712,
3, 1, 8584724, 2009071717, 0, 1, 10701912},
backlist = 0x0,
handlerlist = 0x0,
lisp_eval_depth = 0,
pdlcount = 2,
poll_suppress_count = 0,
interrupt_input_blocked = 0,
byte_stack = 0x0
}
h = {
handler = 50174362,
var = 50116634,
chosen_clause = 8584720,
tag = 0x82fd50,
next = 0x0
}
#33 0x010046cb in top_level_1 (ignore=50116634) at keyboard.c:1174
No locals.
#34 0x0101f987 in internal_catch (tag=50172386, func=0x100469b <top_level_1>,
arg=50116634) at eval.c:1248
c = {
tag = 50172386,
val = 50116634,
next = 0x0,
gcpro = 0x0,
jmp = {8584840, 2147336192, 32, 18, 8584700, 16906616, 8585184, 0, 6619258,
50116634, 3, 50155520, 21061384, 655360, 196613, 8584924},
backlist = 0x0,
handlerlist = 0x0,
lisp_eval_depth = 0,
pdlcount = 2,
poll_suppress_count = 0,
interrupt_input_blocked = 0,
byte_stack = 0x0
}
#35 0x01004606 in command_loop () at keyboard.c:1129
No locals.
#36 0x01003f32 in recursive_edit_1 () at keyboard.c:756
count = 1
val = 63
#37 0x0100407c in Frecursive_edit () at keyboard.c:820
count = 0
buffer = 50116634
#38 0x0100275e in main (argc=1, argv=0xa327b8) at emacs.c:1704
dummy = 18961200
stack_bottom_variable = 1 '\001'
do_initial_setlocale = 1
skip_args = 0
no_loadup = 0
junk = 0x0
dname_arg = 0x0
ch_to_dir = 0x77be2850 "\377\377\377\377"
Lisp Backtrace:
"x-create-frame" (0x82f024)
"x-create-frame-with-faces" (0x82f264)
"make-frame" (0x82f4b4)
"frame-initialize" (0x82f704)
"command-line" (0x82f988)
"normal-top-level" (0x82fb40)
(gdb)
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-05 16:47 Abort when creating frame martin rudalics
@ 2011-09-05 17:22 ` Eli Zaretskii
2011-09-05 17:32 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-05 17:22 UTC (permalink / raw)
To: martin rudalics; +Cc: emacs-devel
> Date: Mon, 05 Sep 2011 18:47:23 +0200
> From: martin rudalics <rudalics@gmx.at>
>
> I get the backtraces below.
>
> It might be related to a change I introduced back in June: I now (#8)
> run_window_configuration_change_hook when doing x_set_tool_bar_lines
> something we didn't do earlier.
I don't think so. It's something more weird, see below.
> #1 0x011e5ef1 in bidi_initialize () at bidi.c:762
This crashes here:
bidi_mirror_table = uniprop_table (intern ("mirroring"));
if (NILP (bidi_mirror_table))
abort (); <<<<<<<<<<<<<<<<<<<<<<<
It should never happen that uniprop_table returns nil. Something is
badly broken in the build.
Was this during startup, when Emacs was creating its first frame?
Because otherwise, I don't understand how come it called
bidi_initialize at this time: it should be called whenever the first
redisplay cycle, ever, is entered, which happens during startup.
If I can reproduce this, I will take a look.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-05 17:22 ` Eli Zaretskii
@ 2011-09-05 17:32 ` Eli Zaretskii
2011-09-05 17:57 ` martin rudalics
0 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-05 17:32 UTC (permalink / raw)
To: rudalics, emacs-devel
> Date: Mon, 05 Sep 2011 20:22:35 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: emacs-devel@gnu.org
>
> If I can reproduce this, I will take a look.
Nope, cannot reproduce this. Emacs starts OK for me, and displays
both the initial frame and HELLO correctly. If I set a breakpoint in
bidi_initialize, I see a non-nil value being returned by
uniprop_table.
Do you have a good uni-mirrored.el file in lisp/international? What
is its size? Could it be that bootstrapping somehow messed up that
file?
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-05 17:32 ` Eli Zaretskii
@ 2011-09-05 17:57 ` martin rudalics
2011-09-05 19:29 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: martin rudalics @ 2011-09-05 17:57 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
> Nope, cannot reproduce this. Emacs starts OK for me, and displays
> both the initial frame and HELLO correctly. If I set a breakpoint in
> bidi_initialize, I see a non-nil value being returned by
> uniprop_table.
It comes up normally here too and I can view HELLO. But it aborts when
run under the debugger.
> Do you have a good uni-mirrored.el file in lisp/international? What
> is its size?
No idea. It has 9342 bytes.
> Could it be that bootstrapping somehow messed up that
> file?
How would I tell?
martin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-05 17:57 ` martin rudalics
@ 2011-09-05 19:29 ` Eli Zaretskii
2011-09-05 20:07 ` Eli Zaretskii
2011-09-05 20:26 ` martin rudalics
0 siblings, 2 replies; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-05 19:29 UTC (permalink / raw)
To: martin rudalics; +Cc: emacs-devel
> Date: Mon, 05 Sep 2011 19:57:37 +0200
> From: martin rudalics <rudalics@gmx.at>
> CC: emacs-devel@gnu.org
>
> > Nope, cannot reproduce this. Emacs starts OK for me, and displays
> > both the initial frame and HELLO correctly. If I set a breakpoint in
> > bidi_initialize, I see a non-nil value being returned by
> > uniprop_table.
>
> It comes up normally here too and I can view HELLO. But it aborts when
> run under the debugger.
Under the debugger, does it abort before completely displaying the
initial frame? Or is that frame already displayed when it aborts?
Also, what version of the debugger do you have?
And how did you configure Emacs? what options to configure.bat did you
use?
> > Do you have a good uni-mirrored.el file in lisp/international? What
> > is its size?
>
> No idea. It has 9342 bytes.
That's the size I have here.
> > Could it be that bootstrapping somehow messed up that
> > file?
>
> How would I tell?
Recreate it?
I'm bootstrapping a clean tree and will see if I can find out
something that way.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-05 19:29 ` Eli Zaretskii
@ 2011-09-05 20:07 ` Eli Zaretskii
2011-09-05 20:26 ` martin rudalics
1 sibling, 0 replies; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-05 20:07 UTC (permalink / raw)
To: rudalics, emacs-devel
> Date: Mon, 05 Sep 2011 22:29:51 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: emacs-devel@gnu.org
>
> I'm bootstrapping a clean tree and will see if I can find out
> something that way.
No cigar, a fresh bootstrapped build works both with and without the
debugger.
What unusual things did you have there? Is that "emacs -Q", or is
some customizations involved?
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-05 19:29 ` Eli Zaretskii
2011-09-05 20:07 ` Eli Zaretskii
@ 2011-09-05 20:26 ` martin rudalics
2011-09-06 2:52 ` Eli Zaretskii
1 sibling, 1 reply; 19+ messages in thread
From: martin rudalics @ 2011-09-05 20:26 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
> Under the debugger, does it abort before completely displaying the
> initial frame? Or is that frame already displayed when it aborts?
No initial frame shown.
> Also, what version of the debugger do you have?
GNU gdb 6.8.
> And how did you configure Emacs? what options to configure.bat did you
> use?
configure --no-opt --without-xpm --without-png --without-jpeg --without-tiff --without-gif
>> > Could it be that bootstrapping somehow messed up that
>> > file?
>>
>> How would I tell?
>
> Recreate it?
I get the same behavior with a build from about two weeks ago and a
correspondingly different file.
martin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-05 20:26 ` martin rudalics
@ 2011-09-06 2:52 ` Eli Zaretskii
2011-09-06 6:57 ` martin rudalics
0 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-06 2:52 UTC (permalink / raw)
To: martin rudalics; +Cc: emacs-devel
> Date: Mon, 05 Sep 2011 22:26:34 +0200
> From: martin rudalics <rudalics@gmx.at>
> CC: emacs-devel@gnu.org
>
> > Under the debugger, does it abort before completely displaying the
> > initial frame? Or is that frame already displayed when it aborts?
>
> No initial frame shown.
OK, at least this is as expected.
> > Also, what version of the debugger do you have?
>
> GNU gdb 6.8.
Perhaps upgrade to a later version (7.3 is already available from
MinGW site).
> I get the same behavior with a build from about two weeks ago and a
> correspondingly different file.
Again, only under GDB?
Does it help to load uni-mirrored.el explicitly, as in "run -l
../lisp/international/uni-mirrored.el" from GDB prompt to run Emacs
(assuming you run GDB from the src directory)?
Anyway, it looks like Emacs is unable to load uni-mirrored.el, I get
the same crash if I rename the file. So perhaps put a breakpoint in
Fload and see what's going on there when it tries to load
uni-mirrored.el.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 2:52 ` Eli Zaretskii
@ 2011-09-06 6:57 ` martin rudalics
2011-09-06 7:09 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: martin rudalics @ 2011-09-06 6:57 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
>> I get the same behavior with a build from about two weeks ago and a
>> correspondingly different file.
>
> Again, only under GDB?
Yes. I get a crash with a certain scenario and in order to investigate
that crash I want to run emacs under the debugger. Unfortunately, I do
not get very far there.
> Does it help to load uni-mirrored.el explicitly, as in "run -l
> ../lisp/international/uni-mirrored.el" from GDB prompt to run Emacs
> (assuming you run GDB from the src directory)?
gdb --args c:/emacs/quickfixes/bin/emacs.exe -l c:/emacs/quickfixes/lisp/international/uni-mirrored.el
or
gdb --args c:/emacs/quickfixes/bin/emacs.exe -l ../lisp/international/uni-mirrored.el
give the same backtrace.
> Anyway, it looks like Emacs is unable to load uni-mirrored.el, I get
> the same crash if I rename the file. So perhaps put a breakpoint in
> Fload and see what's going on there when it tries to load
> uni-mirrored.el.
How? I don't know when it tries to load uni-mirrored.el.
martin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 6:57 ` martin rudalics
@ 2011-09-06 7:09 ` Eli Zaretskii
2011-09-06 9:22 ` martin rudalics
0 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-06 7:09 UTC (permalink / raw)
To: martin rudalics; +Cc: emacs-devel
> Date: Tue, 06 Sep 2011 08:57:29 +0200
> From: martin rudalics <rudalics@gmx.at>
> CC: emacs-devel@gnu.org
>
> > Anyway, it looks like Emacs is unable to load uni-mirrored.el, I get
> > the same crash if I rename the file. So perhaps put a breakpoint in
> > Fload and see what's going on there when it tries to load
> > uni-mirrored.el.
>
> How? I don't know when it tries to load uni-mirrored.el.
Like this:
(gdb) break bidi_iniialize
(gdb) r -Q
When this breakpoint breaks, step through bidi_iniialize until you get
to the 2nd uniprop_table call. Then type at GDB prompt:
(gdb) break Fload
(gdb) continue
The next break in Fload should show that Emacs is loading
uni-mirrored.el. You can verify that once Fload breaks like this:
(gdb) pp file
Then step through Fload and see which line fails there.
Note that in order for "pp" to work, you will need to start GDB in the
src directory. But you probably already know that.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 7:09 ` Eli Zaretskii
@ 2011-09-06 9:22 ` martin rudalics
2011-09-06 9:48 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: martin rudalics @ 2011-09-06 9:22 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
I did
(gdb) break bidi.c:760
and after hitting it
(gdb) break lread.c:1250
getting me
Breakpoint 4, Fload (file=55364081, noerror=50116658, nomessage=50116658,
nosuffix=50116658, must_suffix=50116634) at lread.c:1250
Apparently I enter the call4 below
val = call4 (Vload_source_file_function, found, hist_file_name,
NILP (noerror) ? Qnil : Qt,
(NILP (nomessage) || force_load_messages) ? Qnil : Qt);
return unbind_to (count, val);
and after that return.
> Note that in order for "pp" to work, you will need to start GDB in the
> src directory. But you probably already know that.
(gdb) pp file
never prints anything here.
martin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 9:22 ` martin rudalics
@ 2011-09-06 9:48 ` Eli Zaretskii
2011-09-06 12:23 ` martin rudalics
0 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-06 9:48 UTC (permalink / raw)
To: martin rudalics; +Cc: emacs-devel
> Date: Tue, 06 Sep 2011 11:22:41 +0200
> From: martin rudalics <rudalics@gmx.at>
> CC: emacs-devel@gnu.org
>
> (gdb) break lread.c:1250
>
> getting me
>
> Breakpoint 4, Fload (file=55364081, noerror=50116658, nomessage=50116658,
> nosuffix=50116658, must_suffix=50116634) at lread.c:1250
>
> Apparently I enter the call4 below
>
> val = call4 (Vload_source_file_function, found, hist_file_name,
> NILP (noerror) ? Qnil : Qt,
> (NILP (nomessage) || force_load_messages) ? Qnil : Qt);
> return unbind_to (count, val);
>
> and after that return.
What is the value of Vload_source_file_function? If it's
load-with-code-conversion (as I think it should be), then either add
(message foo) printouts in load-with-code-conversion and see what
happens there, or put a breakpoint in Finsert_file_contents, which
load-with-code-conversion eventually calls, and see why that fails.
> > Note that in order for "pp" to work, you will need to start GDB in the
> > src directory. But you probably already know that.
>
> (gdb) pp file
>
> never prints anything here.
If this is after you invoked Emacs from GDB (as opposed to attaching
to a running program), then I guess it's a bug in that old port of GDB
you are using. It works for me in v7.2.
Anyway, you can use this less convenient method instead:
(gdb) p file
(gdb) xstring
(This assumes that `file' is a Lisp string. There's `xtype' to show
the type.)
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 9:48 ` Eli Zaretskii
@ 2011-09-06 12:23 ` martin rudalics
2011-09-06 12:30 ` martin rudalics
2011-09-06 16:57 ` Eli Zaretskii
0 siblings, 2 replies; 19+ messages in thread
From: martin rudalics @ 2011-09-06 12:23 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
> ... or put a breakpoint in Finsert_file_contents, which
> load-with-code-conversion eventually calls, and see why that fails.
Fine. I now know what happens but don't understand why. I'm running
the debugger from an older emacs and `insert-file-contents' loads
uni-mirrored.el from the directory of _that_ emacs. This also explains
why I see the abort only when running under gdb. If I run gdb from the
new emacs, the debugged emacs starts as expected.
Thanks for helping so far, but I suppose something must be fixed here.
martin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 12:23 ` martin rudalics
@ 2011-09-06 12:30 ` martin rudalics
2011-09-06 16:57 ` Eli Zaretskii
1 sibling, 0 replies; 19+ messages in thread
From: martin rudalics @ 2011-09-06 12:30 UTC (permalink / raw)
To: martin rudalics; +Cc: Eli Zaretskii, emacs-devel
> Thanks for helping so far, but I suppose something must be fixed here.
... unless the bug is in my gdb, obviously. In that case we probably
should strongly warn people to use such a version.
martin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 12:23 ` martin rudalics
2011-09-06 12:30 ` martin rudalics
@ 2011-09-06 16:57 ` Eli Zaretskii
2011-09-06 18:44 ` martin rudalics
1 sibling, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-06 16:57 UTC (permalink / raw)
To: martin rudalics; +Cc: emacs-devel
> Date: Tue, 06 Sep 2011 14:23:29 +0200
> From: martin rudalics <rudalics@gmx.at>
> Cc: emacs-devel@gnu.org
>
> I now know what happens but don't understand why. I'm running the
> debugger from an older emacs and `insert-file-contents' loads
> uni-mirrored.el from the directory of _that_ emacs. This also
> explains why I see the abort only when running under gdb. If I run
> gdb from the new emacs, the debugged emacs starts as expected.
This is a feature ;-) You will see in w32.c that Emacs sets
EMACSLOADPATH in the environment to the path it creates from known
directories, in order to set load-path correctly. And GDB probably
inherits that exports it to the Emacs being debugged...
We define EMACSLOADPATH in the environment because the Windows build
doesn't want to depend on PATH_LOADSEARCH macro being set at build
time (in epaths.h), since the compiled binary needs to be able to run
on a different machine. See init_lread.
Perhaps we should remove EMACSLOADPATH from process-environment when
we run inferior subprocesses?
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 16:57 ` Eli Zaretskii
@ 2011-09-06 18:44 ` martin rudalics
2011-09-07 16:50 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: martin rudalics @ 2011-09-06 18:44 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
> This is a feature ;-) You will see in w32.c that Emacs sets
> EMACSLOADPATH in the environment to the path it creates from known
> directories, in order to set load-path correctly. And GDB probably
> inherits that exports it to the Emacs being debugged...
>
> We define EMACSLOADPATH in the environment because the Windows build
> doesn't want to depend on PATH_LOADSEARCH macro being set at build
> time (in epaths.h), since the compiled binary needs to be able to run
> on a different machine. See init_lread.
It's obvious to me now but it was absolutely confusing initially.
> Perhaps we should remove EMACSLOADPATH from process-environment when
> we run inferior subprocesses?
Some help for cross-debugging would be needed. A minute ago my
debugging emacs crashed on an already crashed debugged emacs.
martin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-06 18:44 ` martin rudalics
@ 2011-09-07 16:50 ` Eli Zaretskii
2011-09-07 18:30 ` martin rudalics
0 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2011-09-07 16:50 UTC (permalink / raw)
To: martin rudalics; +Cc: emacs-devel
> Date: Tue, 06 Sep 2011 20:44:12 +0200
> From: martin rudalics <rudalics@gmx.at>
> CC: emacs-devel@gnu.org
>
> Some help for cross-debugging would be needed.
Does it help to say "unset environment EMACSLOADPATH" at the GDB
prompt, before starting Emacs under the debugger?
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Abort when creating frame
2011-09-07 16:50 ` Eli Zaretskii
@ 2011-09-07 18:30 ` martin rudalics
2011-09-07 18:54 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: martin rudalics @ 2011-09-07 18:30 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
> Does it help to say "unset environment EMACSLOADPATH" at the GDB
> prompt, before starting Emacs under the debugger?
I'm afraid not:
Current directory is c:/emacs/quickfixes/src/
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-mingw32"...
SIGINT is used by the debugger.
Are you sure you want to change it? (y or n) [answered Y; input not from terminal]
DISPLAY =
TERM = emacs
(gdb) unset environment EMACSLOADPATH
(gdb) run -Q
Starting program: c:/emacs/quickfixes/bin/emacs.exe -Q
[New thread 1356.0x66c]
[New thread 1356.0x218]
Breakpoint 1, w32_abort () at w32fns.c:7182
7182 button = MessageBox (NULL,
(gdb)
martin
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2011-09-07 18:54 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-05 16:47 Abort when creating frame martin rudalics
2011-09-05 17:22 ` Eli Zaretskii
2011-09-05 17:32 ` Eli Zaretskii
2011-09-05 17:57 ` martin rudalics
2011-09-05 19:29 ` Eli Zaretskii
2011-09-05 20:07 ` Eli Zaretskii
2011-09-05 20:26 ` martin rudalics
2011-09-06 2:52 ` Eli Zaretskii
2011-09-06 6:57 ` martin rudalics
2011-09-06 7:09 ` Eli Zaretskii
2011-09-06 9:22 ` martin rudalics
2011-09-06 9:48 ` Eli Zaretskii
2011-09-06 12:23 ` martin rudalics
2011-09-06 12:30 ` martin rudalics
2011-09-06 16:57 ` Eli Zaretskii
2011-09-06 18:44 ` martin rudalics
2011-09-07 16:50 ` Eli Zaretskii
2011-09-07 18:30 ` martin rudalics
2011-09-07 18:54 ` Eli Zaretskii
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.