Package: emacs;
Reported by: dcl441-bugs <at> yahoo.com
Date: Thu, 23 Apr 2009 12:35:03 UTC
Severity: normal
Tags: moreinfo, unreproducible
Done: Lars Magne Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: Daniel Clemente <dcl441-bugs <at> yahoo.com> To: bug-gnu-emacs <at> gnu.org Cc: emacs-pretest-bug <at> gnu.org Subject: bug#3090: 23.0.92.3; hang involving XftGlyphExtents after moving cursor Date: Thu, 14 May 2009 14:03:35 +0200
El dj, abr 23 2009, Daniel Clemente va escriure: > This is a hang I had with the code from 20.m4.2009, which I could not reproduce anymore. Today it happened again with a newer Emacs, showing the same effects: XftCharIndex(0xcd8b200, 0xcac8b80, 32, 786432, 8) = 411 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 memmove(0xbf9fdfa8, 0xfa68e18, 72, 0xbf9fdffc, 0xbf9fe000) = 0xbf9fdfa8 memmove(0xbf9fde08, 0xf3cc098, 72, 12, 0xbf9fde08) = 0xbf9fde08 __ctype_tolower_loc() = 0xb70c6b14 __ctype_tolower_loc() = 0xb70c6b14 __ctype_tolower_loc() = 0xb70c6b14 __ctype_tolower_loc() = 0xb70c6b14 XftCharIndex(0xcd8b200, 0xcac8b80, 106, 0xfe02c34, 1216) = 323 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 XftCharIndex(0xcd8b200, 0xcac8b80, 112, 786432, 8) = 319 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 XftCharIndex(0xcd8b200, 0xcac8b80, 97, 786432, 8) = 673 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 XftCharIndex(0xcd8b200, 0xcac8b80, 95, 786432, 8) = 662 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 XftCharIndex(0xcd8b200, 0xcac8b80, 121, 786432, 8) = 325 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 XftCharIndex(0xcd8b200, 0xcac8b80, 95, 786432, 8) = 662 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 XftCharIndex(0xcd8b200, 0xcac8b80, 99, 786432, 8) = 682 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 strlen("font for") = 8 memmove(0x10931b5c, 0x823e60f, 8, 0xbf9fe0b4, 9712) = 0x10931b5c XftCharExists(0xcd8b200, 0xd338dc8, 237, 0xce8c450, 0xff33570) = 1 XftCharIndex(0xcd8b200, 0xd338dc8, 237, 0x8225671, 0xf165965) = 432 XftGlyphExtents(0xcd8b200, 0xd338dc8, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 XftCharIndex(0xcd8b200, 0xcac8b80, 97, 786432, 8) = 673 XftGlyphExtents(0xcd8b200, 0xcac8b80, 0xbf9fe14c, 1, 0xbf9fdfa8) = 0 XftCharIndex(0xcd8b200, 0xcac8b80, 32, 0xfe02b8c, 1228) = 411 Notice the "font for" string; that may be meaningful. After waiting around 3 minutes, I saw a round of fast free() calls for a while: free(0x10f5e230) = <void> free(0x10f5e330) = <void> free(0x10f5e1d0) = <void> free(0x10f5e210) = <void> free(0x10f5e170) = <void> free(0x10f5e270) = <void> … Then it started again, and so on: XftGlyphExtents(0xcd8b200, 0xcaf00c8, 0xbf9fc54c, 1, 0xbf9fc3a8) = 0 XftCharIndex(0xcd8b200, 0xcaf00c8, 102, 786432, 8) = 314 XftGlyphExtents(0xcd8b200, 0xcaf00c8, 0xbf9fc54c, 1, 0xbf9fc3a8) = 0 XftCharIndex(0xcd8b200, 0xcaf00c8, 101, 786432, 8) = 313 XftGlyphExtents(0xcd8b200, 0xcaf00c8, 0xbf9fc54c, 1, 0xbf9fc3a8) = 0 XftCharIndex(0xcd8b200, 0xcaf00c8, 114, 786432, 8) = 326 … The backtrace showed the first time: (gdb) bt #0 0x0821e32e in find_interval () #1 0x08224402 in Fnext_single_property_change () #2 0x0822a467 in composition_compute_stop_pos () #3 0x08073928 in compute_stop_pos () #4 0x00000187 in ?? () #5 0xffffffff in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) Current language: auto; currently asm (gdb) And after continuing and stopping again: #0 0x081d11cc in assq_no_quit () #1 0x080f0908 in get_lface_attributes () #2 0x080f0b73 in merge_face_ref () #3 0x080f70ff in face_at_buffer_position () #4 0x0807353a in handle_face_prop () #5 0x0807aecd in handle_stop () #6 0x0807e0ef in next_element_from_buffer () #7 0x0807d055 in get_next_display_element () #8 0x0807e412 in move_it_in_display_line_to () #9 0x0807fd30 in move_it_to () #10 0x08088ab0 in try_scrolling () #11 0x0809676e in redisplay_window () #12 0x080976d3 in redisplay_window_0 () #13 0x081cac76 in internal_condition_case_1 () #14 0x08074fdb in redisplay_windows () #15 0x0808da75 in redisplay_internal () #16 0x0808e6f2 in redisplay_preserve_echo_area () #17 0x08057759 in sit_for () #18 0x0815b8b8 in command_loop_1 () #19 0x081caeb0 in internal_condition_case () #20 0x0814fd65 in command_loop_2 () #21 0x081caf8a in internal_catch () #22 0x08152481 in recursive_edit_1 () #23 0x08182095 in read_minibuf () #24 0x081cdb22 in Feval () #25 0x081cde8f in Fprogn () #26 0x081cc0b5 in funcall_lambda () #27 0x081cdf4b in apply_lambda () #28 0x081cd8cf in Feval () #29 0x081cdd40 in Fsetq () #30 0x081cdc9b in Feval () #31 0x081cedef in Flet () #32 0x081cdc9b in Feval () #33 0x081cde8f in Fprogn () #34 0x081cc0b5 in funcall_lambda () #35 0x081cdf4b in apply_lambda () #36 0x081cd8cf in Feval () #37 0x081cde8f in Fprogn () #38 0x081caf8a in internal_catch () #39 0x081cdcfd in Fcatch () #40 0x081cdc9b in Feval () #41 0x081cdd40 in Fsetq () #42 0x081cdc9b in Feval () #43 0x081cedef in Flet () #44 0x081cdc9b in Feval () #45 0x081ce83d in Fcond () #46 0x081cdc9b in Feval () #47 0x081ceb77 in FletX () #48 0x081cdc9b in Feval () #49 0x081cde8f in Fprogn () #50 0x081cc0b5 in funcall_lambda () #51 0x081cdf4b in apply_lambda () #52 0x081cd8cf in Feval () #53 0x081cdd40 in Fsetq () #54 0x081cdc9b in Feval () #55 0x081cedef in Flet () #56 0x081cdc9b in Feval () #57 0x081c827a in Fcall_interactively () #58 0x081cc626 in Ffuncall () #59 0x081cc7b9 in call3 () #60 0x0815b314 in command_loop_1 () #61 0x081caeb0 in internal_condition_case () #62 0x0814fd65 in command_loop_2 () #63 0x081caf8a in internal_catch () #64 0x0815250f in recursive_edit_1 () #65 0x08152624 in Frecursive_edit () #66 0x081488c7 in main () My Emacs was this time: GNU Emacs 23.0.92.6 (i686-pc-linux-gnu, GTK+ Version 2.16.0) of 2009-04-27 The ./configure I had used is: CFLAGS="-O3 -w" ./configure --prefix=/opt/dc It ran under --daemon. -- Daniel
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.