"Ben Wing" <ben(a)666.com> wrote:
Didier, can you send me a C stack trace?
Also, can you give me an exact way to reproduce from -vanilla [e.g.using one
of the xpm's provided with XEmacs, or one supplied by you]?
thanks!
In the latest CVS vanilla xemacs, I just evaluate this (xpm file attached):
(set-face-background-pixmap "~/share/images/tile/marble.xpm")
and you get this:
Lisp backtrace follows:
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (catch #<INTERNAL OBJECT (XEmacs bug?) (opaque, size=0) 0x4072e788> ...)
# (unwind-protect ...)
add-spec-list-to-specifier(#<image-specifier global=<unspecified> 0x20b>
((global (nil . "~/share/images/tile/marble.xpm"))) nil)
# bind (is-valid nval how-to-add tag-set locale value specifier)
set-specifier(#<image-specifier global=<unspecified> 0x20b>
"~/share/images/tile/marble.xpm" nil nil nil)
# bind (how-to-add tag-set locale value property face)
set-face-property(default background-pixmap "~/share/images/tile/marble.xpm"
nil nil nil)
# bind (how-to-add tag-set locale pixmap face)
set-face-background-pixmap(default "~/share/images/tile/marble.xpm")
eval((set-face-background-pixmap (quote default)
"~/share/images/tile/marble.xpm"))
# bind (eval-expression-insert-value expression)
#<compiled-function (expression &optional eval-expression-insert-value)
"...(18)" [eval-expression-insert-value expression values eval prin1 t] 3 876374
(list (read-from-minibuffer "Eval: " nil read-expression-map t ...)
current-prefix-arg)>((set-face-background-pixmap (quote default)
"~/share/images/tile/marble.xpm") nil)
call-interactively(eval-expression)
# (condition-case ... . error)
# (catch top-level ...)
zsh: segmentation fault (core dumped) ./src/xemacs -vanilla
Here's the output of gdb on the core:
(gdb) where
#0 0x404a7781 in kill () from /lib/libc.so.6
#1 0x080da9b3 in fatal_error_signal (sig=11) at emacs.c:3426
#2 0x404a76b8 in sigaction () from /lib/libc.so.6
#3 0x0827be27 in x_locate_pixmap_file (name={...}) at glyphs-x.c:591
#4 0x0815fbe0 in potential_pixmap_file_instantiator (instantiator={...},
file_keyword={...}, data_keyword={...}, console_type={...})
at glyphs.c:2448
#5 0x081615a2 in xpm_normalize (inst={...}, console_type={...},
dest_mask={...}) at glyphs.c:2983
#6 0x0815a3f9 in normalize_image_instantiator (instantiator={...},
contype={...}, dest_mask={...}) at glyphs.c:750
#7 0x080e5ae4 in va_call_trapping_problems_1 (ai_mi_madre=0xbfffd718)
at eval.c:5071
#8 0x080e5507 in call_trapping_problems_2 (opaque={...}) at eval.c:4770
#9 0x080df89c in call_with_condition_handler (
handler=0x80e52b0 <flagged_a_squirmer>, handler_arg={...},
fun=0x80e54c8 <call_trapping_problems_2>, arg={...}) at eval.c:2077
#10 0x080e553d in call_trapping_problems_1 (opaque={...}) at eval.c:4776
#11 0x080dea29 in internal_catch (tag={...},
func=0x80e5518 <call_trapping_problems_1>, arg={...}, threw=0xbfffd64c,
thrown_tag=0xbfffd654) at eval.c:1489
#12 0x080e57b5 in call_trapping_problems (warning_class={...},
warning_string=0x0, flags=98315, problem=0x0,
---Type <return> to continue, or q <return> to quit---
fun=0x80e5a30 <va_call_trapping_problems_1>, arg=0xbfffd718) at eval.c:4982
#13 0x080e6109 in call_with_suspended_errors (
fun=0x815a2e0 <normalize_image_instantiator>, retval={...}, class={...},
errb=
{really_unlikely_name_to_have_accidentally_in_a_non_errb_structure = 8675309},
nargs=3) at eval.c:5162
#14 0x08163203 in image_going_to_add (specifier={...}, locale={...},
tag_set={...}, instantiator={...}) at glyphs.c:3441
#15 0x08238341 in build_up_processed_list (specifier={...}, locale={...},
inst_list={...}) at specifier.c:1693
#16 0x08238563 in specifier_add_spec (specifier={...}, locale={...},
inst_list={...}, add_meth=SPEC_REMOVE_TAG_SET_PREPEND) at specifier.c:1738
#17 0x08238f98 in Fadd_spec_list_to_specifier (specifier={...},
spec_list={...}, how_to_add={...}) at specifier.c:2014
#18 0x080e3024 in Ffuncall (nargs=4, args=0xbfffd9d8) at eval.c:3749
#19 0x080a0cb5 in execute_optimized_program (
program=0x40730b28
"\n¬\n\vÆs«\005\v\022Ç\023È\bÉ\t!\"\b\035\211\036\021¬\022Ê\r!«\rË\r\t\v\fÇ\n&\006\210ª4\f«\037\f<¬\004\fC\024Ì\f!\024\016\021¬\f\r:«\bÍÎ\r\"\025ª\005\f\rB\025\v«\005\v\rB\025Ï\tÐ\rÉ\t!\"\n#\210*\b\207\026",
stack_depth=8, constants_data=0x406896c4) at bytecode.c:674
#20 0x080e9213 in funcall_compiled_function (fun={...}, nargs=5,
args=0xbfffdc1c) at eval.c:3394
#21 0x080e32aa in Ffuncall (nargs=6, args=0xbfffdc18) at eval.c:3784
---Type <return> to continue, or q <return> to quit---
#22 0x080a0cb5 in execute_optimized_program (
program=0x40730344
"Æ\r!\025\f\016\vs«\rÇ\r\fN\v\n\t\b%\210ª\e\n¬\tÈ\r\f\v#\210ª\020É\r\f\"\210Ê\r\fN\v\n\t\b%\210\v\207",
stack_depth=6,
constants_data=0x40684e14) at bytecode.c:674
#23 0x080e9213 in funcall_compiled_function (fun={...}, nargs=6,
args=0xbfffde4c) at eval.c:3394
#24 0x080e32aa in Ffuncall (nargs=7, args=0xbfffde48) at eval.c:3784
#25 0x080a0cb5 in execute_optimized_program (
program=0x4072f500 "Å\fÆ\v\n\t\b&\006\207", stack_depth=7,
constants_data=0x40670edc) at bytecode.c:674
#26 0x080e9213 in funcall_compiled_function (fun={...}, nargs=2,
args=0xbfffdff4) at eval.c:3394
#27 0x080e2a2c in Feval (form={...}) at eval.c:3596
#28 0x080e2fd8 in Ffuncall (nargs=2, args=0xbfffe198) at eval.c:3749
#29 0x080a0cb5 in execute_optimized_program (
program=0x86504c8 "Ã\t!\nB\022Ä\n@\b«\004pª\002Å\"\207", stack_depth=3,
constants_data=0x40674a54) at bytecode.c:674
#30 0x080e9213 in funcall_compiled_function (fun={...}, nargs=2,
args=0xbfffe3b8) at eval.c:3394
#31 0x080e32aa in Ffuncall (nargs=3, args=0xbfffe3b4) at eval.c:3784
#32 0x080e3c44 in Fapply (nargs=2, args=0xbfffe428) at eval.c:4038
#33 0x080e46a2 in apply1 (fn={...}, arg={...}) at eval.c:4358
#34 0x080a74f4 in Fcall_interactively (function={...}, record_flag={...},
---Type <return> to continue, or q <return> to quit---
keys={...}) at callint.c:459
#35 0x080e12cd in Fcommand_execute (cmd={...}, record_flag={...}, keys={...})
at eval.c:3053
#36 0x080fa762 in execute_command_event (command_builder=0x85547e0,
event={...}) at event-stream.c:4101
#37 0x080fb0be in Fdispatch_event (event={...}) at event-stream.c:4417
#38 0x080b187d in Fcommand_loop_1 () at cmdloop.c:578
#39 0x080b15fd in command_loop_1 (dummy={...}) at cmdloop.c:497
#40 0x080df01b in condition_case_1 (handlers={...},
bfun=0x80b15c4 <command_loop_1>, barg={...}, hfun=0x80b0c34 <cmd_error>,
harg={...}) at eval.c:1866
#41 0x080b0d9b in command_loop_3 () at cmdloop.c:259
#42 0x080b0dc7 in command_loop_2 (dummy={...}) at cmdloop.c:270
#43 0x080dea29 in internal_catch (tag={...}, func=0x80b0db8 <command_loop_2>,
arg={...}, threw=0x0, thrown_tag=0x0) at eval.c:1489
#44 0x080b1098 in initial_command_loop (load_me={...}) at cmdloop.c:308
#45 0x080d93ca in xemacs_21_5_b6_i686_pc_linux (argc=2, argv=0xbfffec54,
envp=0xbfffec60, restart=0) at emacs.c:2347
#46 0x080da0fe in main (argc=2, argv=0xbfffec54, envp=0xbfffec60)
at emacs.c:2723
(gdb)
(gdb)
Here's the pixmap file:
Good luck ! :-)
--
Didier Verna, didier(a)lrde.epita.fr,
http://www.lrde.epita.fr/~didier
EPITA / LRDE, 14-16 rue Voltaire Tel.+33 (1) 53 14 59 47
94276 Le Kremlin-Bicêtre, France Fax.+33 (1) 53 14 59 22 didier(a)xemacs.org