unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Nicolas Richard <theonewiththeevillook@yahoo.fr>
To: Dmitry Antipov <dmantipov@yandex.ru>, 16128@debbugs.gnu.org
Subject: bug#16128: 24.3.50; SIGSEGV at font.c:2901 : eassert (FRAME_DISPLAY_INFO (font->frame)->n_fonts);
Date: Fri, 13 Dec 2013 15:24:06 +0100	[thread overview]
Message-ID: <52AB1886.6020404@yahoo.fr> (raw)
In-Reply-To: <52AB0EAB.40303@yandex.ru>

Le 13/12/2013 14:42, Dmitry Antipov a écrit :
> On 12/13/2013 04:04 PM, Nicolas Richard wrote:
> 
>> Program received signal SIGSEGV, Segmentation fault.
>> 0x081f08dd in font_close_object (font_object=141131381) at font.c:2901
>> 2901      eassert (FRAME_DISPLAY_INFO (font->frame)->n_fonts);
> 
> Argh.  Non-GTK X support uses separate frames for tooltips.  When tooltip
> disappears, the frame is deleted and this usually happens before than its
> font becomes unreachable and swept by GC.  Should be fixed in r115505.

Sorry I cannot confirm.

As an automated test, I can run :
src/emacs -Q --eval '(dotimes (i 10) (tooltip-hide) (tooltip-show "foo"))' --eval '(kill-emacs)' 
(can't use --batch here)

Here's the gdb session:

~/sources/running-emacs/src $ gdb emacs
GNU gdb (Gentoo 7.5.1 p2) 7.5.1
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>...
Reading symbols from /home/youngfrog/sources/running-emacs/src/emacs...done.
SIGINT is used by the debugger.
Are you sure you want to change it? (y or n) [answered Y; input not from terminal]
DISPLAY = :0.0
TERM = xterm
Breakpoint 1 at 0x81519b0: file emacs.c, line 350.
Temporary breakpoint 2 at 0x816f050: file sysdep.c, line 850.
(gdb) run -Q --eval '(dotimes (i 10) (tooltip-hide) (tooltip-show "foo"))' --eval '(kill-emacs)' 
Starting program: /home/youngfrog/sources/running-emacs/src/emacs -Q --eval '(dotimes (i 10) (tooltip-hide) (tooltip-show "foo"))' --eval '(kill-emacs)'
warning: Could not load shared library symbols for linux-gate.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
[New Thread 0xb4c5ab40 (LWP 8078)]
[New Thread 0xb421eb40 (LWP 8079)]
[New Thread 0xb38ffb40 (LWP 8080)]

Program received signal SIGSEGV, Segmentation fault.
0x081f092e in font_close_object (font_object=143662965) at font.c:2904
2904	      eassert (FRAME_DISPLAY_INFO (font->frame)->n_fonts);

(gdb) bt
#0  0x081f092e in font_close_object (font_object=143662965) at font.c:2904
#1  0x081b4602 in cleanup_vector (vector=<optimized out>) at alloc.c:2883
#2  0x081bae07 in sweep_vectors () at alloc.c:2929
#3  gc_sweep () at alloc.c:6631
#4  Fgarbage_collect () at alloc.c:5554
#5  0x081d555d in maybe_gc () at lisp.h:4476
#6  Ffuncall (nargs=4, args=0xbfffd324) at eval.c:2756
#7  0x0821366f in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=20, args_template=139690946, nargs=-1073753296, args=0x4) at bytecode.c:919
#8  0x081d51c1 in funcall_lambda (fun=137484725, nargs=5, arg_vector=0xbfffd4c8) at eval.c:3039
#9  0x081d5527 in Ffuncall (nargs=6, args=0xbfffd4c4) at eval.c:2866
#10 0x0821366f in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=28, args_template=139690946, nargs=-1073752872, args=0x6) at bytecode.c:919
#11 0x081d51c1 in funcall_lambda (fun=137485021, nargs=2, arg_vector=0xbfffd668) at eval.c:3039
#12 0x081d5527 in Ffuncall (nargs=3, args=0xbfffd664) at eval.c:2866
#13 0x0821366f in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=16, args_template=139690946, nargs=-1073752468, args=0x3) at bytecode.c:919
#14 0x081d51c1 in funcall_lambda (fun=137485117, nargs=2, arg_vector=0xbfffd808) at eval.c:3039
#15 0x081d5527 in Ffuncall (nargs=3, args=0xbfffd804) at eval.c:2866
#16 0x0821366f in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=12, args_template=139690946, nargs=-1073752052, args=0x3) at bytecode.c:919
#17 0x082160d8 in Fbyte_code (bytestr=137499137, vector=137499165, maxdepth=12) at bytecode.c:482
#18 0x081d4afa in eval_sub (form=137499126) at eval.c:2181
#19 0x081d84e3 in internal_lisp_condition_case (var=139690946, bodyform=137499126, handlers=137317446) at eval.c:1313
#20 0x082149a6 in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=24, args_template=139690946, nargs=-1073751516, args=0x8f) at bytecode.c:1169
#21 0x081d51c1 in funcall_lambda (fun=137498997, nargs=2, arg_vector=0xbfffdbc8) at eval.c:3039
#22 0x081d5527 in Ffuncall (nargs=3, args=0xbfffdbc4) at eval.c:2866
#23 0x081d5b4f in call2 (fn=139787994, arg1=143662381, arg2=139690946) at eval.c:2619
#24 0x08138cae in x_create_tip_frame (text=140920521, parms=<optimized out>, dpyinfo=<optimized out>) at xfns.c:5074
#25 Fx_show_tip (string=<optimized out>, frame=142537437, parms=140932838, timeout=40, dx=20, dy=80) at xfns.c:5308
#26 0x081d57b7 in Ffuncall (nargs=7, args=0xbfffdd24) at eval.c:2826
#27 0x0821366f in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=28, args_template=139690946, nargs=-1073750724, args=0x7) at bytecode.c:919
#28 0x082160d8 in Fbyte_code (bytestr=138132833, vector=138132861, maxdepth=28) at bytecode.c:482
#29 0x081d4afa in eval_sub (form=138132822) at eval.c:2181
#30 0x081d84e3 in internal_lisp_condition_case (var=139723978, bodyform=138132822, handlers=138132950) at eval.c:1313
#31 0x082149a6 in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=12, args_template=139690946, nargs=-1073750188, args=0x8f) at bytecode.c:1169
#32 0x081d51c1 in funcall_lambda (fun=138132725, nargs=1, arg_vector=0xbfffe090) at eval.c:3039
#33 0x081d42fa in apply_lambda (fun=138132725, args=<optimized out>) at eval.c:2914
#34 0x081d455c in eval_sub (form=141690942) at eval.c:2250
#35 0x081d4f26 in Fprogn (body=141689526) at eval.c:458
#36 0x081d8220 in Fwhile (args=141689510) at eval.c:988
#37 0x081d4921 in eval_sub (form=141689502) at eval.c:2123
#38 0x081d4f26 in Fprogn (body=141689494) at eval.c:458
#39 0x081d890c in Flet (args=141689486) at eval.c:966
#40 0x081d4921 in eval_sub (form=141689470) at eval.c:2123
#41 0x081d4990 in eval_sub (form=141691102) at eval.c:2246
#42 0x081d7424 in Feval (form=141691102, lexical=139690946) at eval.c:1993
#43 0x081d5895 in Ffuncall (nargs=2, args=0xbfffe4dc) at eval.c:2808
#44 0x0821366f in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=92, args_template=1028, nargs=-1073748764, args=0x2) at bytecode.c:919
#45 0x081d5253 in funcall_lambda (fun=137530877, nargs=1, arg_vector=0xbfffe688) at eval.c:2973
#46 0x081d5527 in Ffuncall (nargs=2, args=0xbfffe684) at eval.c:2866
#47 0x0821366f in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=68, args_template=0, nargs=-1073748344, args=0x2) at bytecode.c:919
#48 0x081d5253 in funcall_lambda (fun=137518077, nargs=0, arg_vector=0xbfffe85c) at eval.c:2973
#49 0x081d5527 in Ffuncall (nargs=1, args=0xbfffe858) at eval.c:2866
#50 0x0821366f in exec_byte_code (bytestr=139690946, vector=8912896, maxdepth=48, args_template=0, nargs=-1073747884, args=0x1) at bytecode.c:919
#51 0x081d5253 in funcall_lambda (fun=137516301, nargs=0, arg_vector=0xbfffe9c0) at eval.c:2973
#52 0x081d42fa in apply_lambda (fun=137516301, args=<optimized out>) at eval.c:2914
#53 0x081d455c in eval_sub (form=141361470) at eval.c:2250
#54 0x081d7424 in Feval (form=141361470, lexical=139690946) at eval.c:1993
#55 0x08154d69 in top_level_2 () at keyboard.c:1179
#56 0x081d3748 in internal_condition_case (bfun=0x8154d50 <top_level_2>, handlers=139723978, hfun=0x8157d70 <cmd_error>) at eval.c:1344
#57 0x081565d5 in top_level_1 (ignore=139690946) at keyboard.c:1187
#58 0x081d366b in internal_catch (tag=139722026, func=0x8156570 <top_level_1>, arg=139690946) at eval.c:1108
#59 0x081578bc in command_loop () at keyboard.c:1148
#60 recursive_edit_1 () at keyboard.c:777
#61 0x08157bb0 in Frecursive_edit () at keyboard.c:841
#62 0x08057992 in main (argc=<optimized out>, argv=0xbfffecb4) at emacs.c:1634

Lisp Backtrace:
"Automatic GC" (0x8526670)
"internal-face-x-get-resource" (0xbfffd328)
"set-face-attribute-from-resource" (0xbfffd4c8)
"set-face-attributes-from-resources" (0xbfffd668)
"make-face-x-resource-internal" (0xbfffd808)
"byte-code" (0xbfffd94c)
"face-set-after-frame-default" (0xbfffdbc8)
"x-show-tip" (0xbfffdd28)
"byte-code" (0xbfffde7c)
"tooltip-show" (0xbfffe090)
"while" (0xbfffe22c)
"let" (0xbfffe34c)
"dotimes" (0xbfffe3dc)
"eval" (0xbfffe4e0)
"command-line-1" (0xbfffe688)
"command-line" (0xbfffe85c)
"normal-top-level" (0xbfffe9c0)
(gdb) p *font->frame
$1 = {
  header = {
    size = -2147483629
  }, 
  name = 139691234, 
  icon_name = 139712586, 
  title = 139712586, 
  focus_frame = 139712586, 
  root_window = 139712586, 
  selected_window = 139712586, 
  minibuffer_window = 139712586, 
  param_alist = 139712586, 
  scroll_bars = 139712586, 
  condemned_scroll_bars = 137323457, 
  menu_bar_items = 137477881, 
  face_alist = 139712586, 
  menu_bar_vector = 139712586, 
  buffer_predicate = 139712586, 
  buffer_list = 137504766, 
  buried_buffer_list = 139712586, 
  tool_bar_window = 139712586, 
  desired_tool_bar_string = 139712586, 
  current_tool_bar_string = 139712586, 
  tool_bar_items = 1291845709, 
  tool_bar_position = 139690946, 
  face_cache = 0x85383c2, 
  menu_bar_items_used = 139842642, 
  namebuf = 0x85383c2 "", 
  current_pool = 0x85383c2, 
  desired_pool = 0x85383c2, 
  desired_matrix = 0x85383c2, 
  current_matrix = 0x85383c2, 
  glyphs_initialized_p = 0, 
  resized_p = 1, 
  default_face_done_p = 0, 
  already_hscrolled_p = 0, 
  updated_p = 0, 
  minimize_tool_bar_window_p = 0, 
  fonts_changed = 1, 
  cursor_type_changed = 1, 
  redisplay = 1, 
  tool_bar_lines = 139690946, 
  tool_bar_height = 139690946, 
  n_tool_bar_rows = 139690946, 
  n_tool_bar_items = 139690946, 
  decode_mode_spec_buffer = 0x85383c2 "", 
  insert_line_cost = 0x85383c2, 
  delete_line_cost = 0x85383c2, 
  insert_n_lines_cost = 0x85383c2, 
  delete_n_lines_cost = 0x85383c2, 
  text_cols = 139690946, 
  text_lines = 139690946, 
  total_cols = 139690946, 
  text_width = 139690946, 
  text_height = 139690946, 
  new_width = 139690946, 
  new_height = 139690946, 
  new_pixelwise = 194, 
  left_pos = 139690946, 
  top_pos = 139690946, 
  pixel_width = 139690946, 
  pixel_height = 139690946, 
  x_pixels_diff = 139690946, 
  y_pixels_diff = 139690946, 
  win_gravity = 139690946, 
  size_hint_flags = 139690946, 
  border_width = 139690946, 
  internal_border_width = 139690946, 
  right_divider_width = 139690946, 
  bottom_divider_width = 139690946, 
  column_width = 139690946, 
  line_height = 139690946, 
  output_method = 139690946, 
  terminal = 0x85383c2, 
  output_data = {
    tty = 0x85383c2, 
    x = 0x85383c2, 
    w32 = 0x85383c2, 
    ns = 0x85383c2, 
    nothing = 139690946
  }, 
  font_driver_list = 0x85383c2, 
  font_data_list = 0x85383c2, 
  fringe_cols = 139690946, 
  left_fringe_width = 139690946, 
  right_fringe_width = 139690946, 
  want_fullscreen = 139690946, 
  menu_bar_lines = 139690946, 
  menu_bar_height = 139690946, 
  wait_event_type = 139690946, 
  external_menu_bar = 0, 
  visible = 1, 
  iconified = 0, 
  garbaged = 0, 
  wants_modeline = 0, 
  auto_raise = 1, 
  auto_lower = 1, 
  no_split = 1, 
  explicit_name = 1, 
  window_sizes_changed = 0, 
  mouse_moved = 0, 
  pointer_invisible = 0, 
  frozen_window_starts = 0, 
  vertical_scroll_bar_type = (vertical_scroll_bar_right | unknown: 139690944), 
  desired_cursor = 139690946, 
  cursor_width = 139690946, 
  blink_off_cursor = 139690946, 
  blink_off_cursor_width = 139690946, 
  config_scroll_bar_width = 139690946, 
  config_scroll_bar_cols = 139690946, 
  scroll_bar_actual_width = 139690946, 
  cost_calculation_baud_rate = 139690946, 
  alpha = {1.4775605879856227e-268, 1.4775605879856227e-268}, 
  gamma = 1.4775605879856227e-268, 
  extra_line_spacing = 80, 
  background_pixel = 139690946, 
  foreground_pixel = 142218541
}
(gdb) 

-- 
Nico.






  parent reply	other threads:[~2013-12-13 14:24 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-13 11:12 bug#16128: 24.3.50; SIGSEGV at font.c:2901 : eassert (FRAME_DISPLAY_INFO (font->frame)->n_fonts); Nicolas Richard
2013-12-13 12:04 ` Nicolas Richard
2013-12-13 13:42   ` Dmitry Antipov
2013-12-13 14:15     ` Eli Zaretskii
2013-12-14 10:44       ` Jan Djärv
2013-12-14 11:09         ` Eli Zaretskii
2013-12-14 11:26           ` Jan Djärv
2013-12-14 12:01             ` Eli Zaretskii
2013-12-13 14:24     ` Nicolas Richard [this message]
2013-12-13 16:02       ` Dmitry Antipov
2018-06-15 11:51         ` Noam Postavsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52AB1886.6020404@yahoo.fr \
    --to=theonewiththeevillook@yahoo.fr \
    --cc=16128@debbugs.gnu.org \
    --cc=dmantipov@yandex.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).