emacs-pretest-bug
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs crashes when displaying the Euro character


From: Milan Zamazal
Subject: Re: Emacs crashes when displaying the Euro character
Date: Mon, 04 Sep 2006 16:01:25 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

>>>>> "RS" == Richard Stallman <address@hidden> writes:

    RS> If you can reproducibly cause an X protocol error, try doing
    RS> (x-synchronize t) and then make the failure happen.

Here it is.  It happens in Emacs 2006-08-29 without your patch, on
displaying a certain character with a certain face.  Either some garbage
or an empty space gets displayed instead of the character right before
the crash.

(gdb) bt full
#0  x_error_quitter (display=0xe1c8b0, error=0x7fffffe70900) at xterm.c:7825
        buf = '\0' <repeats 24 times>, 
"\350W\0045l+\000\000P\t\347\377\377\177\000\000\002\231\314\004\000\000\000\000\020\t\347\377\377\177\000\000Mf\0265l+\000\000\000\000\000\000\000\000\000\000\003\260\0354l+",
 '\0' <repeats 26 times>, "\001", '\0' <repeats 47 times>, 
"\240\b\347\377\377\177", '\0' <repeats 14 times>, 
"\001\000\000\000\350W\0045l+\000\000x\t\347\377\377\177\000\000\240T\0045l+", 
'\0' <repeats 57 times>
        buf1 = "\v\000\000\000\000\000\000\000P\257\3145l+", '\0' <repeats 74 
times>, 
"\240\327a5l+\000\000\000\000\000\000\000\000\000\000P\257\3145l+\000\000\177\003",
 '\0' <repeats 22 times>, "\240\037\000\000\377\377", '\0' <repeats 121 times>, 
"\200|\254\0354l+\000\000\022", '\0' <repeats 15 times>, 
"\020\t\347\377\377\177\000\000H&\0265l+\000\000\002\231\314\004\000\000\000\000Mf\0265l+\000\000\000\000\000\000\000\000\000\200\026\000\000\000\000\000\000\000x\344\0255l+\000\000`V\0265l+\000\000\n\243\0265"
#1  0x00000000004829fa in x_error_handler (display=0xe1c8b0, 
error=0x7fffffe70900) at xterm.c:7796
No locals.
#2  0x00002b6c3519e4ee in _XError () from /usr/lib/libX11.so.6
No symbol table info available.
#3  0x00002b6c351a02cb in _XReply () from /usr/lib/libX11.so.6
No symbol table info available.
#4  0x00002b6c35197ed9 in XSync () from /usr/lib/libX11.so.6
No symbol table info available.
#5  0x00002b6c3519807b in XSetAfterFunction () from /usr/lib/libX11.so.6
No symbol table info available.
#6  0x00002b6c351842a0 in XDrawImageString16 () from /usr/lib/libX11.so.6
No symbol table info available.
#7  0x00000000004894d5 in x_draw_glyph_string (s=0x7fffffe71000) at xterm.c:1310
        y = <value optimized out>
        w = <value optimized out>
        gc = <value optimized out>
        h = <value optimized out>
        r = {
  x = 30,
  y = 1152,
  width = 0,
  height = 0
}
        relief_drawn_p = 0
#8  0x0000000000423703 in draw_glyphs (w=0xf684f0, x=-1636096, row=0x1752088, 
area=TEXT_AREA, start=0, end=<value optimized out>,
    hl=DRAW_NORMAL_TEXT, overlaps=0) at xdisp.c:19602
        first_glyph = <value optimized out>
        head = (struct glyph_string *) 0x7fffffe71150
        tail = (struct glyph_string *) 0x7fffffe70ec0
        s = <value optimized out>
        clip_head = (struct glyph_string *) 0x0
        clip_tail = (struct glyph_string *) 0x0
        last_x = 1181
        x_reached = 451
        i = 0
        j = 20
        f = <value optimized out>
#9  0x0000000000425b86 in x_write_glyphs (start=<value optimized out>, len=44) 
at xdisp.c:20892
        x = <value optimized out>
        hpos = 0
#10 0x000000000040e549 in update_window_line (w=0xf684f0, vpos=15, 
mouse_face_overwritten_p=0x7fffffe7150c) at dispnew.c:4415
        current_row = (struct glyph_row *) 0x1725f48
        desired_row = (struct glyph_row *) 0x1752088
        changed_p = 0
#11 0x0000000000410710 in update_window (w=0xf684f0, force_p=0) at 
dispnew.c:4280
        tm = {
  tv_sec = 1157375875,
  tv_usec = 135799
}
        vpos = 15
        i = <value optimized out>
        end = (struct glyph_row *) 0x1754c80
        header_line_row = (struct glyph_row *) 0x0
        changed_p = 1
        mouse_face_overwritten_p = 0
        row = (struct glyph_row *) 0x1752088
        yb = 940
        desired_matrix = (struct glyph_matrix *) 0x2465500
        paused_p = 0
#12 0x0000000000411904 in update_window_tree (w=0xf684f0, force_p=0) at 
dispnew.c:3976
        paused_p = 0
#13 0x0000000000413ae8 in update_frame (f=0xf682a0, force_p=0, 
inhibit_hairy_id_p=0) at dispnew.c:3907
        row = <value optimized out>
        col = <value optimized out>
        paused_p = 1
        root_window = (struct window *) 0xf684f0
#14 0x000000000044266c in redisplay_internal (preserve_echo_area=<value 
optimized out>) at xdisp.c:11299
        f = (struct frame *) 0xf682a0
        tail = <value optimized out>
        frame = <value optimized out>
        w = (struct window *) 0xf684f0
        pause = 0
        must_finish = 1
        tlbufpos = {
  charpos = 1,
  bytepos = 0
}
        number_of_visible_frames = 1
        count = 2
        polling_stopped_here = 0
        consider_all_windows_p = <value optimized out>
#15 0x00000000004b3668 in read_char (commandflag=1, nmaps=4, 
maps=0x7fffffe723c0, prev_event=9292177, used_mouse_menu=0x7fffffe724e0, 
end_time=0x0)
    at keyboard.c:2631
        now = {
  tv_sec = 1,
  tv_usec = 1
}
        kb = (KBOARD *) 0x123e1b5
        c = 9292177
        local_getcjmp = {{
    __jmpbuf = {22869344, 22869348, 8, 5283286, 140733193388032, 5309777, 
9292177, 5310414},
    __mask_was_saved = 0,
    __saved_mask = {
      __val = {140737486725896, 3, 17852592, 5, 14214193, 140737486725808, 1, 
0, 0, 140737486725896, 5311269, 140737486725664, 140737486725464,
        140737486725968, 140737486725888, 140737486725896}
    }
  }}
        save_jump = {{
    __jmpbuf = {0, 19128757, 19129168, 140737486725896, 140737486725584, 
5309322, 8192, 23983088},
    __mask_was_saved = -1629600,
    __saved_mask = {
      __val = {2, 140737486725664, 140737486725464, 140737486725456, 
4294967295, 0, 0, 140737486725972, 22869348, 140737486725472, 0,
        140737486725584, 5561766, 4293337552, 140737486725584, 140737486726016}
    }
  }}
        key_already_recorded = 0
        tem = <value optimized out>
        save = <value optimized out>
        previous_echo_area_message = 9292177
        also_record = 9292177
        reread = 0
        polling_stopped_here = <value optimized out>
#16 0x00000000004b61f8 in read_key_sequence (keybuf=0x7fffffe72560, bufsize=30, 
prompt=9292177, dont_downcase_last=0, can_return_switch_frame=1,
    fix_current_buffer=1) at keyboard.c:8947
        interrupted_kboard = (KBOARD *) 0xe49090
        key = 0
        used_mouse_menu = 0
        echo_local_start = 0
        last_real_key_start = 0
        keys_local_start = 0
        local_first_binding = 0
        from_string = 9292177
        count = 2
        t = 0
        echo_start = 0
        keys_start = 0
        nmaps = 4
        nmaps_allocated = 4
        defs = (Lisp_Object * volatile) 0x7fffffe72390
        submaps = (Lisp_Object * volatile) 0x7fffffe723c0
        orig_local_map = 23141301
        orig_keymap = 9292177
        localized_local_map = 0
        first_binding = 0
        first_unbound = 31
        mock_input = 0
        fkey = {
  parent = 9276133,
  map = 9276133,
  start = 0,
  end = 0
}
        keytran = {
  parent = 10975429,
  map = 10975429,
  start = 0,
  end = 0
}
        delayed_switch_frame = 9292177
        original_uppercase = 22869344
        original_uppercase_position = -1
        starting_buffer = (struct buffer *) 0x15cf560
        fake_prefixed_keys = 9292177
#17 0x00000000004b7e3a in command_loop_1 () at keyboard.c:1601
        cmd = <value optimized out>
        lose = 2
        nonundocount = 0
        keybuf = {24, 848, 47743752022736, 5169347453, 8024908, 8024904, 0, 
140737486728688, 140737486728696, 140737486728424, 140737486726784,
  5308326, 110932256, 4220318, 678102308709466112, 22, 47743754590600, 
47743754638216, 47743754657908, 875474224, 0, 562949961566261,
  140737486726944, 47743731936560, 0, 140737486726728, 140737486726496, 0, 
9292177, 13930369}
        i = 17852592
        prev_modiff = 498
        prev_buffer = (struct buffer *) 0x1bae860
        was_locked = 0
        already_adjusted = 0
#18 0x000000000050f666 in internal_condition_case (bfun=0x4b7c90 
<command_loop_1>, handlers=9373025, hfun=0x4b20f0 <cmd_error>) at eval.c:1469
        val = <value optimized out>
        c = {
  tag = 9292177,
  val = 9292177,
  next = 0x7fffffe72820,
  gcpro = 0x0,
  jmp = {{
      __jmpbuf = {0, 9379920, 9379888, 140737486728688, 140737486728696, 
140737486728424, 140737486726800, 5305833},
      __mask_was_saved = 0,
      __saved_mask = {
        __val = {5224320, 25, 14000835, 25, 25, 47743754632960, 47743754575872, 
5494240, 6903112, 9379888, 140737486728688, 140737486728696,
          140737486728424, 9379920, 47743730837123, 1}
      }
    }},
  backlist = 0x0,
  handlerlist = 0x0,
  lisp_eval_depth = 0,
  pdlcount = 2,
  poll_suppress_count = 1,
  interrupt_input_blocked = 0,
  byte_stack = 0x0
}
        h = {
  handler = 9373025,
  var = 9292177,
  chosen_clause = 9292177,
  tag = 0x7fffffe726b0,
  next = 0x0
}
#19 0x00000000004b143a in command_loop_2 () at keyboard.c:1326
        val = 0
#20 0x000000000050f767 in internal_catch (tag=<value optimized out>, 
func=0x4b1420 <command_loop_2>, arg=9292177) at eval.c:1210
        c = {
  tag = 9364081,
  val = 9292177,
  next = 0x0,
  gcpro = 0x0,
  jmp = {{
      __jmpbuf = {0, 9379920, 9379888, 140737486728688, 140737486728696, 
140737486728424, 140737486727184, 5306203},
      __mask_was_saved = 0,
      __saved_mask = {
        __val = {25, 140737486728688, 0, 47130884570768, 0, 5494240, 9629138, 
9629136, 9633648, 9344496, 9633649, 9292177, 5249078, 0, 4294967296,
          9292225}
      }
    }},
  backlist = 0x0,
  handlerlist = 0x0,
  lisp_eval_depth = 0,
  pdlcount = 2,
  poll_suppress_count = 1,
  interrupt_input_blocked = 0,
  byte_stack = 0x0
}
#21 0x00000000004b1f2a in command_loop () at keyboard.c:1305
No locals.
#22 0x00000000004b22ea in recursive_edit_1 () at keyboard.c:1003
        val = <value optimized out>
#23 0x00000000004b23e8 in Frecursive_edit () at keyboard.c:1064
        buffer = <value optimized out>
#24 0x00000000004a835e in main (argc=3, argv=0x7fffffe72df8) at emacs.c:1794
        tz = 0x0
        dummy = 0
        stack_bottom_variable = 0 '\0'
        do_initial_setlocale = -1626640
        skip_args = 0
        rlim = {
  rlim_cur = 8720000,
  rlim_max = 18446744073709551615
}
        no_loadup = 0
        junk = 0x0





reply via email to

[Prev in Thread] Current Thread [Next in Thread]