* NTEmacs crashes, #3 of 2 ;-)
@ 2003-03-13 21:03 David Abrahams
2003-03-13 22:30 ` NTEmacs crashes, #4 " David Abrahams
2003-03-13 22:31 ` NTEmacs crashes, #3 " David Abrahams
0 siblings, 2 replies; 3+ messages in thread
From: David Abrahams @ 2003-03-13 21:03 UTC (permalink / raw)
Here's another:
> emacs.exe!get_cached_font_char(bdffont * fontp=0x746e6603, int strchr=63) Line 343 + 0x14 C
emacs.exe!get_bitmap_with_cache(bdffont * fontp=0x746e6603, int strchr=63) Line 542 C
emacs.exe!w32_BDF_TextOut(bdffont * fontp=0x746e6603, HDC__ * hdc=0xea011250, int left=738, int top=1125, unsigned char * text=0x0082f4c0, int dim=1, int bytelen=0, int fixed_pitch_size=0) Line 672 + 0x9 C
emacs.exe!w32_text_out() Line 2764 + 0x1b C
emacs.exe!x_draw_glyph_string_foreground(glyph_string * s=0x000002e2) Line 3516 C
emacs.exe!x_draw_glyph_string(glyph_string * s=0x0082f4c4) Line 4404 C
emacs.exe!x_draw_glyphs(window * w=0x01c52c00, int x=745, glyph_row * row=0x01aa3000, int area=1, int start=104, int end=105, int hl=2, int overlaps_p=0) Line 5087 + 0x6 C
emacs.exe!x_draw_phys_cursor_glyph(window * w=0x01c52c00, glyph_row * row=0x01aa3000, int hl=2) Line 9665 C
emacs.exe!x_display_and_set_cursor(window * w=0x00000000, int on=7, int hpos=0, int vpos=10, int x=0, int y=3473784) Line 9940 + 0x9 C
emacs.exe!x_update_window_end(window * w=0x01c52c00, int cursor_on_p=1, int mouse_face_overwritten_p=0) Line 723 + 0x20 C
emacs.exe!update_window(window * w=0x01c52c00, int force_p=0) Line 4196 + 0x14 C
emacs.exe!update_window_tree(window * w=0x01c52400, int force_p=0) Line 3881 + 0x9 C
emacs.exe!update_window_tree(window * w=0x01c52600, int force_p=0) Line 3880 C
emacs.exe!update_frame(frame * f=0x01c52600, int force_p=0, int inhibit_hairy_id_p=0) Line 3819 C
emacs.exe!redisplay_internal(int preserve_echo_area=0) Line 9047 + 0x8 C
emacs.exe!redisplay() Line 8444 + 0x7 C
emacs.exe!read_char(int commandflag=1, int nmaps=2, int * maps=0x0082fca0, int prev_event=287928324, int * used_mouse_menu=0x0082fce8) Line 2475 C
emacs.exe!read_key_sequence(int * keybuf=0x0082fd7c, int bufsize=30, int prompt=287928324, int dont_downcase_last=0, int can_return_switch_frame=1, int fix_current_buffer=1) Line 8584 + 0x24 C
emacs.exe!command_loop_1() Line 1503 + 0x28 C
emacs.exe!internal_condition_case(int (void)* bfun=0x0100e224, int handlers=288038420, int (void)* hfun=0x0100deb8) Line 1352 C
emacs.exe!command_loop_2() Line 1286 + 0x15 C
emacs.exe!internal_catch(int tag=287994820, int (void)* func=0x0100e12c, int arg=287928324) Line 1112 + 0x6 C
emacs.exe!command_loop() Line 1270 C
emacs.exe!recursive_edit_1() Line 985 + 0x5 C
emacs.exe!Frecursive_edit() Line 1042 C
emacs.exe!main() Line 1659 + 0x5 C
emacs.exe!_mainCRTStartup() + 0xb4
kernel32.dll!77e814c7()
-------
pch = fontp->chtbl[BDF_FIRST_OFFSET(index)];
010EBCF9 mov ecx,eax
010EBCFB and ecx,80h
010EBD01 shl ecx,1
010EBD03 mov edx,eax
010EBD05 sar edx,8
010EBD08 or ecx,edx
010EBD0A mov edx,dword ptr [fontp]
010EBD0D mov ecx,dword ptr [edx+ecx*4+18h] <========= pc is here
if (!pch)
010EBD11 test ecx,ecx
return NULL;
010EBD13 je get_cached_font_char+3Dh (10EBD25h)
---------
Locals:
- fontp 0x746e6603 {filename=??? hfile=??? hfilemap=??? ...} bdffont *
+ filename CXX0030: Error: expression cannot be evaluated char *
hfile CXX0030: Error: expression cannot be evaluated void *
hfilemap CXX0030: Error: expression cannot be evaluated void *
+ font CXX0030: Error: expression cannot be evaluated unsigned char *
+ seeked CXX0030: Error: expression cannot be evaluated unsigned char *
size CXX0030: Error: expression cannot be evaluated unsigned long
+ chtbl 0x746e661b fchar * [512]
llx CXX0030: Error: expression cannot be evaluated int
lly CXX0030: Error: expression cannot be evaluated int
urx CXX0030: Error: expression cannot be evaluated int
ury CXX0030: Error: expression cannot be evaluated int
yoffset CXX0030: Error: expression cannot be evaluated int
relative_compose CXX0030: Error: expression cannot be evaluated int
default_ascent CXX0030: Error: expression cannot be evaluated int
+ registry CXX0030: Error: expression cannot be evaluated unsigned char *
+ encoding CXX0030: Error: expression cannot be evaluated unsigned char *
+ slant CXX0030: Error: expression cannot be evaluated unsigned char *
width CXX0030: Error: expression cannot be evaluated int
height CXX0030: Error: expression cannot be evaluated int
pixsz CXX0030: Error: expression cannot be evaluated int
nchars CXX0030: Error: expression cannot be evaluated int
strchr 63 int
---------
I can trace the problem back up the stack to here:
static void
w32_text_out (s, x, y,chars,nchars)
struct glyph_string * s;
int x, y;
wchar_t * chars;
int nchars;
{
int charset_dim = w32_font_is_double_byte (s->gc->font) ? 2 : 1;
if (s->gc->font->bdf)
w32_BDF_TextOut (s->gc->font->bdf, s->hdc, <===============
x, y, (char *) chars, charset_dim,
nchars * charset_dim, 0);
else if (s->first_glyph->w32_font_type == UNICODE_FONT)
ExtTextOutW (s->hdc, x, y, 0, NULL, chars, nchars, NULL);
else
ExtTextOutA (s->hdc, x, y, 0, NULL, (char *) chars,
nchars * charset_dim, NULL);
}
Where I note that s->gc->font appears to be uninitialized, or a
dangling pointer (0x746e6603).
--
Dave Abrahams
Boost Consulting
www.boost-consulting.com
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: NTEmacs crashes, #4 of 2 ;-)
2003-03-13 21:03 NTEmacs crashes, #3 of 2 ;-) David Abrahams
@ 2003-03-13 22:30 ` David Abrahams
2003-03-13 22:31 ` NTEmacs crashes, #3 " David Abrahams
1 sibling, 0 replies; 3+ messages in thread
From: David Abrahams @ 2003-03-13 22:30 UTC (permalink / raw)
David Abrahams <dave@boost-consulting.com> writes:
And another. OK, I could switch fonts to see what happens. That'll
be painful though; there aren't any others I like to read. Also, the
problem doesn't seem to be in the low-level Windows font at all, but
in some emacs structures which are wrappers around those, so I doubt
it'll change anything.
-Dave
emacs.exe!get_cached_font_char(bdffont * fontp=0x39353838, int strchr=0x00000020) Line 343 + 0x14 C
emacs.exe!get_bitmap_with_cache(bdffont * fontp=0x39353838, int strchr=0x00000020) Line 542 C
emacs.exe!w32_BDF_TextOut(bdffont * fontp=0x39353838, HDC__ * hdc=0x60012897, int left=0x0000005b, int top=0x000000bd, unsigned char * text=0x0082f590, int dim=0x00000002, int bytelen=0x00000000, int fixed_pitch_size=0x00000000) Line 672 + 0x9 C
> emacs.exe!w32_text_out() Line 2764 + 0x1b C
emacs.exe!x_draw_glyph_string_foreground(glyph_string * s=0x0000005b) Line 3516 C
emacs.exe!x_draw_glyph_string(glyph_string * s=0x0082f594) Line 4404 C
emacs.exe!x_draw_glyphs(window * w=0x01f07600, int x=0x00000062, glyph_row * row=0x026636cc, int area=0x00000001, int start=0x0000000b, int end=0x0000000c, int hl=0x00000002, int overlaps_p=0x00000000) Line 5087 + 0x6 C
emacs.exe!x_draw_phys_cursor_glyph(window * w=0x01f07600, glyph_row * row=0x026636cc, int hl=0x00000002) Line 9665 C
emacs.exe!x_display_and_set_cursor(window * w=0x00000000, int on=0x00000007, int hpos=0x00000000, int vpos=0x0000000a, int x=0x00000000, int y=0x0001017c) Line 9940 + 0x9 C
emacs.exe!x_update_window_end(window * w=0x01f07600, int cursor_on_p=0x00000001, int mouse_face_overwritten_p=0x00000000) Line 723 + 0x20 C
emacs.exe!update_window(window * w=0x01f07600, int force_p=0x00000000) Line 4196 + 0x14 C
emacs.exe!update_window_tree(window * w=0x01f07600, int force_p=0x00000000) Line 3881 + 0x9 C
emacs.exe!update_frame(frame * f=0x01f07600, int force_p=0x00000000, int inhibit_hairy_id_p=0x00000000) Line 3819 C
emacs.exe!redisplay_internal(int preserve_echo_area=0x00000000) Line 9107 + 0x18 C
emacs.exe!redisplay() Line 8444 + 0x7 C
emacs.exe!read_char(int commandflag=0x00000001, int nmaps=0x00000005, int * maps=0x0082fc94, int prev_event=0x11297004, int * used_mouse_menu=0x0082fce8) Line 2475 C
emacs.exe!read_key_sequence(int * keybuf=0x0082fd7c, int bufsize=0x0000001e, int prompt=0x11297004, int dont_downcase_last=0x00000000, int can_return_switch_frame=0x00000001, int fix_current_buffer=0x00000001) Line 8584 + 0x24 C
emacs.exe!command_loop_1() Line 1503 + 0x28 C
emacs.exe!internal_condition_case(int (void)* bfun=0x0100e224, int handlers=0x112b1e14, int (void)* hfun=0x0100deb8) Line 1352 C
emacs.exe!command_loop_2() Line 1286 + 0x15 C
emacs.exe!internal_catch(int tag=0x112a73c4, int (void)* func=0x0100e12c, int arg=0x11297004) Line 1112 + 0x6 C
emacs.exe!command_loop() Line 1270 C
emacs.exe!recursive_edit_1() Line 985 + 0x5 C
emacs.exe!Frecursive_edit() Line 1042 C
emacs.exe!main() Line 1659 + 0x5 C
emacs.exe!_mainCRTStartup() + 0xb4
kernel32.dll!77e814c7()
-------- locals in w32_text_out ---------
- s 0x0082f594 {x=0x0000005b y=0x000000b4 ybase=0x000000bd ...} glyph_string *
x 0x0000005b int
y 0x000000b4 int
ybase 0x000000bd int
width 0x00000007 int
background_width 0x00000007 int
height 0x0000000c int
left_overhang 0x00000000 int
right_overhang 0x00000000 int
+ f 0x0155e000 {size=0x20000442 next=0x0155c000 {size=0x20008082 next=0x01542a90 {size=0x00000001 next=0x01542aa0 {size=0x00000001 next=0x01542ab0 contents=0x01542aa8 } contents=0x01542a98 } contents=0x0155c008 } name=0x3155cc84 ...} frame *
+ w 0x01f07600 {size=0x20001043 vec_next=0x01f07800 {size=0x20001043 next=0x01f07e00 {size=0x20001043 next=0x01f07a00 {size=0x20001043 next=0x01fa6040 contents=0x01f07a08 } contents=0x01f07e08 } contents=0x01f07808 } frame=0x4155e000 ...} window *
+ window 0x0001017c {unused=0x00520045 } HWND__ *
+ row 0x026636cc {glyphs=0x026636cc used=0x026636dc x=0x00000000 ...} glyph_row *
area 0x00000001 int
+ char2b 0x0082f590 " c[" unsigned short *
nchars 0x00000001 int
hl 0x00000002 int
+ face 0x028d7c00 {id=0x00000000 gc=0x01542070 {foreground=0x02000000 background=0x02ffffff font=0x014f3000 {font_type=0x00000000 tm={tmHeight=0x0000000c tmAscent=0x00000009 tmDescent=0x00000003 ...} hfont=0x070a0512 {unused=??? } ...} } font=0x014f3000 {font_type=0x00000000 tm={tmHeight=0x0000000c tmAscent=0x00000009 tmDescent=0x00000003 ...} hfont=0x070a0512 {unused=??? } ...} ...} face *
+ font 0x014f3000 {font_type=0x00000000 tm={tmHeight=0x0000000c tmAscent=0x00000009 tmDescent=0x00000003 ...} hfont=0x070a0512 {unused=??? } ...} W32FontStruct *
font_info 0x01752268 font_info *
+ cmp 0x00000000 {glyph_len=??? pixel_width=??? ascent=??? ...} composition *
gidx 0x00000000 int
extends_to_end_of_line_p 0x00000000 unsigned int
background_filled_p 0x00000000 unsigned int
two_byte_p 0x00000000 unsigned int
font_not_found_p 0x00000000 unsigned int
stippled_p 0x00000000 unsigned int
for_overlaps_p 0x00000000 unsigned int
- gc 0x015854d0 {foreground=0x02ffffff background=0x02000000 font=0x01320b00 {font_type=0x01320a80 tm={tmHeight=0x02531f80 tmAscent=0x63756c2d tmDescent=0x20616469 ...} hfont=0x6f73692d {unused=??? } ...} } _XGCValues *
foreground 0x02ffffff unsigned long
background 0x02000000 unsigned long
- font 0x01320b00 {font_type=0x01320a80 tm={tmHeight=0x02531f80 tmAscent=0x63756c2d tmDescent=0x20616469 ...} hfont=0x6f73692d {unused=??? } ...} W32FontStruct *
font_type 0x01320a80 int
+ tm {tmHeight=0x02531f80 tmAscent=0x63756c2d tmDescent=0x20616469 ...} tagTEXTMETRICA
+ hfont 0x6f73692d {unused=??? } HFONT__ *
+ bdf 0x39353838 {filename=??? hfile=??? hfilemap=??? ...} bdffont *
double_byte_p 0x3100312d int
+ max_bounds {rbearing=0x0000 lbearing=0x0000 width=0x0000 ...} _XCharStruct
+ scratch {rbearing=0x0000 lbearing=0x0000 width=0x0000 ...} _XCharStruct
+ per_char 0x01510800 {rbearing=0x0007 lbearing=0x0000 width=0x0008 ...} _XCharStruct *
+ hdc 0x60012897 {unused=??? } HDC__ *
+ first_glyph 0x024d20dc {charpos=0x00000481 object=0x424a8c00 pixel_width=0x0007 ...} glyph *
+ img 0x00000000 {timestamp=??? pixmap=??? mask=??? ...} image *
+ next 0x00000000 {x=??? y=??? ybase=??? ...} glyph_string *
+ prev 0x00000000 {x=??? y=??? ybase=??? ...} glyph_string *
x 0x0000005b int
y 0x000000bd int
+ chars 0x0082f590 " c[" unsigned short *
nchars 0x00000001 int
--
Dave Abrahams
Boost Consulting
www.boost-consulting.com
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: NTEmacs crashes, #3 of 2 ;-)
2003-03-13 21:03 NTEmacs crashes, #3 of 2 ;-) David Abrahams
2003-03-13 22:30 ` NTEmacs crashes, #4 " David Abrahams
@ 2003-03-13 22:31 ` David Abrahams
1 sibling, 0 replies; 3+ messages in thread
From: David Abrahams @ 2003-03-13 22:31 UTC (permalink / raw)
BTW, one more data point: my .emacs begins with:
(setq w32-enable-italics t)
(setq w32-enable-synthesized-fonts t)
(set-default-font "-*-Lucida Console-normal-r-*-*-12-96-96-96-c-*-iso8859-1")
(set-face-font 'italic "-*-Lucida Console-normal-i-*-*-12-96-96-96-c-*-*-1")
(set-face-font 'bold-italic "-*-Lucida Console-bold-i-*-*-12-96-96-96-c-*-*-1")
--
Dave Abrahams
Boost Consulting
www.boost-consulting.com
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2003-03-13 22:31 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-13 21:03 NTEmacs crashes, #3 of 2 ;-) David Abrahams
2003-03-13 22:30 ` NTEmacs crashes, #4 " David Abrahams
2003-03-13 22:31 ` NTEmacs crashes, #3 " David Abrahams
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.