emacs-devel
[Top][All Lists]
Advanced

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

Re: Emacs crashes, 07nov16


From: Jan Djärv
Subject: Re: Emacs crashes, 07nov16
Date: Thu, 22 Nov 2007 08:07:04 +0100
User-agent: Thunderbird 2.0.0.9 (X11/20071031)

Looks loke you printed *s->font twice, but not *s->font_info. It could be an effect of optimization, can you try again wih -O0?

Thanks,

        Jan D.


Robert J. Chassell skrev:
address@hidden writes

    Hmm, it looks like someone is overwriting the stack.  77 is
    X_ImageText16 (XDrawImageString16) so some parameter to that call
    is bad.  But where that corruption happens is har to know.

Interesting! I get this
    (gdb) l x_draw_glyph_string_foreground
    Function "x_draw_glyph_string_foreground" not defined.

both when my breakpoint is abort () at emacs.c:431 and when it is
x_connection_closed at xterm.c:7786 even though
x_draw_glyph_string_foreground (s) is defined on line 1316 of xterm.c
and line 1374 of xterm.c is

            XDrawImageString16 (s->display, s->window, s->gc, x,

When I run and try to display the euro character having previously:

    (gdb) b 1374
         <i.e. the line that XDrawImageString16 is on.  Not to be confused with
          XDrawString16 that occurs a bit before this line>

I see this:

    (gdb) r
    The program being debugged has been started already.
    Start it from the beginning? (y or n) y
    Starting program: /usr/local/src/emacs/src/emacs -i -q     --eval 
'(emacs-version t)' -bg DodgerBlue4 -fg white     -fn 
'-Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO8859-1'     -geometry 
80x44+545+51 -name '-q GNU Emacs in Debugger 4'
    [Thread debugging using libthread_db enabled]
    [New Thread 0xb71fc920 (LWP 10230)]
    [Switching to Thread 0xb71fc920 (LWP 10230)]

    Breakpoint 4, x_draw_glyph_string (s=0xbfe761b0) at xterm.c:1374

    (gdb)  p *s
    $1 = {
x = 30, y = 180, ybase = 196, width = 10, background_width = 10, height = 20, left_overhang = 0, right_overhang = 0, f = 0x8601840, w = 0x86019c8, display = 0x85b8f00, window = 46137561, row = 0x86278cc, area = TEXT_AREA, char2b = 0xbfe76190, nchars = 1, hl = DRAW_NORMAL_TEXT, face = 0x8798b40, font = 0x8859550, font_info = 0x8603318, cmp = 0x0, gidx = 0, extends_to_end_of_line_p = 0, background_filled_p = 0, two_byte_p = 1, font_not_found_p = 0, stippled_p = 0, for_overlaps = 0, gc = 0x858e5f8, first_glyph = 0x86064b8, img = 0x0, slice = { x = 0, y = 0, width = 0, height = 0 }, clip_head = 0x0, clip_tail = 0x0, next = 0xbfe76100, prev = 0x0
    }
    (gdb)  p *s->font
    $2 = {
ext_data = 0x8798be8, fid = 46138179, direction = 0, min_char_or_byte2 = 0, max_char_or_byte2 = 255, min_byte1 = 0, max_byte1 = 255, all_chars_exist = 0, default_char = 0, n_properties = 23, properties = 0x8847370, min_bounds = { lbearing = 0, rbearing = 0, width = 10, ascent = -3, descent = -15, attributes = 0 }, max_bounds = { lbearing = 9, rbearing = 10, width = 10, ascent = 16, descent = 4, attributes = 0 }, per_char = 0xb6d75000, ascent = 16, descent = 4
    }
    (gdb) p *s->font_info
    $3 = {
ext_data = 0x8798be8, fid = 46138179, direction = 0, min_char_or_byte2 = 0, max_char_or_byte2 = 255, min_byte1 = 0, max_byte1 = 255, all_chars_exist = 0, default_char = 0, n_properties = 23, properties = 0x8847370, min_bounds = { lbearing = 0, rbearing = 0, width = 10, ascent = -3, descent = -15, attributes = 0 }, max_bounds = { lbearing = 9, rbearing = 10, width = 10, ascent = 16, descent = 4, attributes = 0 }, per_char = 0xb6d75000, ascent = 16, descent = 4
    }
    (gdb)  p x
    ^done,locals=[{name="tem",type="long unsigned int",value="<value optimized out>"},{name="h",type="long unsigned int",value="<value optimized 
out>"},{name="y",type="int",value="<value optimized out>"},{name="relief_drawn_p",type="int",value="0"}]
    (gdb)  p boff
    ^done,locals=[{name="tem",type="long unsigned int",value="<value optimized out>"},{name="h",type="long unsigned int",value="<value optimized 
out>"},{name="y",type="int",value="<value optimized out>"},{name="relief_drawn_p",type="int",value="0"}]
(gdb)


Starting with fixed 20 and going to a Courier font of 18 (there are
none readily available for 20) using S-down-mouse-1 (mouse-set-font),
I can display the Euro sign as I can with fixed 18.

When I do S-down-mouse-1 (mouse-set-font) with fixed 18 (i.e., with
-Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO8859-1), I do not
see fontset startup: 20-dot medium which is visible when I start with
fixed 20 (i.e., with
-Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO8859-1).

Incidentally, Courier fonts 14 and 18 are bigger than fixed 20 and
Courier font 12 is smaller.




Today's GNU Emacs CVS snapshot, Wed, 2007 Nov 21  10:49 UTC
GNU Emacs 23.0.50.9 (i686-pc-linux-gnu, GTK+ Version 2.12.1)
started in debugger with

    set args -i -q \
    --eval '(emacs-version t)' -bg DodgerBlue4 -fg white \
    -fn '-Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO8859-1' \
    -geometry 80x44+545+51 -name '-q GNU Emacs in Debugger 4'

architecture: i686
Linux kernel: 2.6.22-2-686
distribution: Debian testing, updated today






reply via email to

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