Michael Lundkvist <ml(a)epact.se> writes:
> In XEmacs 21.0 "Poitou60" [Lucid] (sparc-sun-solaris2.5.1, Mule) of
> I have a file that crashes both 21.0-b54 and 21.0.60 when I open
> it. Using C-u C-x C-f and specifying 'no-conversion' makes it load OK.
[snip backtrace of crash in redisplay ]
If I load the file in "Apollo" (on Linux 2.0.35) compiled with-mule
(and the default error-checking) I get a crash a bit earlier at
file-coding.c:3907, which is:
3904 charset = str->iso2022.charset[reg];
3905
3906 /* Error checking: */
3907 if (NILP (charset) || str->iso2022.invalid_designated[reg]
3908 || (((c & 0x7F) == ' ' || (c & 0x7F) == ISO_CODE_DEL)
3909 && XCHARSET_CHARS (charset) == 94))
random debugging stuff follows:
(gdb) p str->iso2022
$4 = {charset = {138349840, 138171016, 138170988, 138170988},
register_left = 0, register_right = 1, esc = ISO_ESC_NOTHING,
esc_bytes = "\000\000\000\000\000\000\000", esc_bytes_index = 0,
composite_chars = 0x0, invalid_designated = "\000\000\000",
switched_dir_and_no_valid_charset_yet = 0, invalid_switch_dir = 0,
output_literally = 0, output_direction_sequence = 0}
(gdb) p reg
$5 = 1
Of the four charsets only the first (str->iso2022.charset[0]) seems
valid. charset[1] is the Symbol 't' the other two are 'nil'.
Maybe one of the mule (or file-coding) people can have a look at
this...
Fatal error: assertion failed, file /local/srcdisk/gunnar/src/XEmacs/xemacs/src/
mule-charset.h, line 485, RECORD_TYPEP (obj, lrecord_charset) ||
MARKED_RECORD_P (obj)
#0 0x403c6405 in __kill ()
#1 0x40393055 in raise (sig=136649952)
#2 0x80f9d44 in error_check_charset (obj=138171016)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/mule-charset.h:485
#3 0x80f23b1 in decode_coding_iso2022 (decoding=0x860e678,
src=0x861e7c9 'ÿ' <repeats 21 times>, "úUP\017", 'ÿ' <repeats 35 times>, "òU_", 'ÿ' <repeats 34 times>, "ð\rU_ð", dst=0x85e19e8, n=11999)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/file-coding.c:3907
#4 0x80eb625 in mule_decode (decoding=0x860e678,
src=0x861e7c8 'ÿ' <repeats 22 times>, "úUP\017", 'ÿ' <repeats 35 times>, "òU_", 'ÿ' <repeats 34 times>, "ð\rU_ð", dst=0x85e19e8, n=12000)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/file-coding.c:2026
#5 0x80eae5d in decoding_reader (stream=0x860e678,
data=0x861e7c8 'ÿ' <repeats 22 times>, "úUP\017", 'ÿ' <repeats 35 times>, "òU_", 'ÿ' <repeats 34 times>, "ð\rU_ð", size=65536)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/file-coding.c:1805
#6 0x816b620 in Lstream_raw_read (lstr=0x860e678,
buffer=0x861e7c8 'ÿ' <repeats 22 times>, "úUP\017", 'ÿ' <repeats 35 times>, "òU_", 'ÿ' <repeats 34 times>, "ð\rU_ð", size=65536)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/lstream.c:509
#7 0x816b6d9 in Lstream_read_more (lstr=0x860e678)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/lstream.c:527
#8 0x816b835 in Lstream_read (lstr=0x860e678, data=0xbfff64ac, size=32768)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/lstream.c:571
#9 0x812a093 in Finsert_file_contents_internal (filename=140091796,
visit=138171016, beg=1, end=24001, replace=138170988, codesys=138273096,
used_codesys=139246280)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/fileio.c:2987
#10 0x80c3076 in Ffuncall (nargs=8, args=0xbfffe5dc)
at /local/srcdisk/gunnar/src/XEmacs/xemacs/src/eval.c:3189
#11 0x8091475 in execute_optimized_program (
[rest snipped]
--
Gunnar Evermann
Speech, Vision & Robotics Group
Engineering Department
Cambridge University