unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Frank Terbeck <ft@bewatermyfriend.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 37671@debbugs.gnu.org
Subject: bug#37671: 27.0.50; Segmentation fault with --fg-daemon on Linux
Date: Sat, 01 Feb 2020 03:28:09 +0100	[thread overview]
Message-ID: <87lfpnf3d2.fsf@ft.bewatermyfriend.org> (raw)
In-Reply-To: <875zhl52cy.fsf@ft.bewatermyfriend.org> (Frank Terbeck's message of "Wed, 08 Jan 2020 17:39:41 +0100")

Eli Zaretskii wrote:
> (I assume that you still have the crashed session in the debugger.)

Okay, new chance. :)

I've updated my  laptop's emacs to master. This time,  the crash doesn't
seem to  be on exactly  the same line as  before, but a  little earlier.
Still in ‘show_mouse_face()’, though.

Thread 1 "emacs-28.0.50" received signal SIGSEGV, Segmentation fault.
show_mouse_face (hlinfo=0x555556d00830, draw=DRAW_NORMAL_TEXT) at xdisp.c:31447
31447         && hlinfo->mouse_face_end_row < w->current_matrix->nrows)
(gdb) bt
#0  0x00005555556247d0 in show_mouse_face (hlinfo=0x555556d00830, draw=DRAW_NORMAL_TEXT) at xdisp.c:31447
#1  0x0000555555624c90 in clear_mouse_face (hlinfo=0x555556d00830) at xdisp.c:31579
#2  0x0000555555705a54 in handle_one_xevent (dpyinfo=0x555556d00780, event=0x7fffffffcd10, finish=0x7fffffffcddc, hold_quit=0x7fffffffce00) at xterm.c:8783
#3  0x0000555555706f05 in XTread_socket (terminal=0x5555563a66f0, hold_quit=0x7fffffffce00) at xterm.c:9365
#4  0x000055555576471e in gobble_input () at keyboard.c:6891
#5  0x0000555555764bb9 in handle_async_input () at keyboard.c:7128
#6  0x0000555555764bd8 in process_pending_signals () at keyboard.c:7142
#7  0x0000555555764c18 in unblock_input_to (level=0) at keyboard.c:7157
#8  0x0000555555764c3c in unblock_input () at keyboard.c:7176
#9  0x00005555559ac163 in xg_select (fds_lim=18, rfds=0x7fffffffd710, wfds=0x7fffffffd690, efds=0x0, timeout=0x7fffffffd670, sigmask=0x0) at xgselect.c:163
#10 0x00005555558f7a08 in wait_reading_process_output (time_limit=30, nsecs=0, read_kbd=-1, do_display=true, wait_for_cell=0x0, wait_proc=0x0, just_wait_proc=0) at process.c:5571
#11 0x00005555555a69a3 in sit_for (timeout=0x7a, reading=true, display_option=1) at dispnew.c:6045
#12 0x000055555575bbe6 in read_char (commandflag=1, map=0x555559b00f53, prev_event=0x0, used_mouse_menu=0x7fffffffdcbf, end_time=0x0) at keyboard.c:2738
#13 0x000055555576a4bb in read_key_sequence (keybuf=0x7fffffffdec0, prompt=0x0, dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, prevent_redisplay=false) at keyboard.c:9553
#14 0x00005555557583b5 in command_loop_1 () at keyboard.c:1350
#15 0x0000555555875019 in internal_condition_case (bfun=0x555555757f6f <command_loop_1>, handlers=0x90, hfun=0x555555757705 <cmd_error>) at eval.c:1355
#16 0x0000555555757c34 in command_loop_2 (ignore=0x0) at keyboard.c:1091
#17 0x00005555558748ce in internal_catch (tag=0xd500, func=0x555555757c07 <command_loop_2>, arg=0x0) at eval.c:1116
#18 0x0000555555757bd2 in command_loop () at keyboard.c:1070
#19 0x00005555557572d4 in recursive_edit_1 () at keyboard.c:714
#20 0x0000555555757458 in Frecursive_edit () at keyboard.c:786
#21 0x000055555574fa8e in main (argc=3, argv=0x7fffffffe398) at emacs.c:2054

(gdb) list 31447
31427   #if defined (HAVE_GPM) || defined (MSDOS) || defined (WINDOWSNT)
31428     tty_draw_row_with_mouse_face (w, row, start_hpos, end_hpos, draw);
31429   #endif
31430   }
31431
31432   /* Display the active region described by mouse_face_* according to DRAW.  */
31433
31434   static void
31435   show_mouse_face (Mouse_HLInfo *hlinfo, enum draw_glyphs_face draw)
31436   {
31437     struct window *w = XWINDOW (hlinfo->mouse_face_window);
31438     struct frame *f = XFRAME (WINDOW_FRAME (w));
31439
31440     if (/* If window is in the process of being destroyed, don't bother
31441            to do anything.  */
31442         w->current_matrix != NULL
31443         /* Don't update mouse highlight if hidden.  */
31444         && (draw != DRAW_MOUSE_FACE || !hlinfo->mouse_face_hidden)
31445         /* Recognize when we are called to operate on rows that don't exist
31446            anymore.  This can happen when a window is split.  */
31447         && hlinfo->mouse_face_end_row < w->current_matrix->nrows)
31448       {
31449         bool phys_cursor_on_p = w->phys_cursor_on_p;
31450         struct glyph_row *row, *first, *last;
31451
31452         first = MATRIX_ROW (w->current_matrix, hlinfo->mouse_face_beg_row);
31453         last = MATRIX_ROW (w->current_matrix, hlinfo->mouse_face_end_row);
31454
31455         for (row = first; row <= last && row->enabled_p; ++row)
31456           {
31457             int start_hpos, end_hpos, start_x;
31458
31459             /* For all but the first row, the highlight starts at column 0.  */
31460             if (row == first)
31461               {
31462                 /* R2L rows have BEG and END in reversed order, but the
31463                    screen drawing geometry is always left to right.  So
31464                    we need to mirror the beginning and end of the
31465                    highlighted area in R2L rows.  */
31466                 if (!row->reversed_p)

(gdb) p *hlinfo
$9 = {mouse_face_beg_row = 16,
      mouse_face_beg_col = 21,
      mouse_face_beg_x = 252,
      mouse_face_end_row = 16,
      mouse_face_end_col = 35,
      mouse_face_end_x = 420,
      mouse_face_window = 0x5555571b9bc5,
      mouse_face_face_id = 52,
      mouse_face_overlay = 0x0,
      mouse_face_mouse_frame = 0x5555589ff5d0,
      mouse_face_mouse_x = 401,
      mouse_face_mouse_y = 425,
      mouse_face_past_end = false,
      mouse_face_defer = false,
      mouse_face_hidden = false}

(gdb) p *f
$10 = {header = {size = 285941742698496},
       name = 0x55573dc812400000,
       icon_name = 0xfffffffffe000055,
       title = 0xfffffffffeffffff,
       parent_frame = 0xfffffffffeffffff,
       focus_frame = 0xfffffffffeffffff,
       root_window = 0xfffffffffeffffff,
       selected_window = 0xfffffffffeffffff,
       old_selected_window = 0xfffffffffeffffff,
       minibuffer_window = 0xfffffffffeffffff,
       param_alist = 0xfffffffffeffffff,
       scroll_bars = 0xfffffffffeffffff,
       condemned_scroll_bars = 0xfffffffffeffffff,
       menu_bar_items = 0xfffffffffeffffff,
       face_alist = 0xfffffffffeffffff,
       menu_bar_vector = 0xfffffffffeffffff,
       buffer_predicate = 0xfffffffffeffffff,
       buffer_list = 0xfffffffffeffffff,
       buried_buffer_list = 0xfffffffffeffffff,
       tab_bar_window = 0xfffffffffeffffff,
       desired_tab_bar_string = 0xfffffffffeffffff,
       current_tab_bar_string = 0xfffffffffeffffff,
       tool_bar_window = 0xfffffffffeffffff,
       desired_tool_bar_string = 0xfffffffffeffffff,
       current_tool_bar_string = 0xfffffffffeffffff,
       font_data = 0xfffffffffeffffff,
       tab_bar_items = 0xfffffffffeffffff,
       tool_bar_items = 0xfffffffffeffffff,
       face_cache = 0xfffffffffeffffff,
       last_tab_bar_item = -16777217,
       last_tool_bar_item = -1,
       menu_bar_items_used = -16777217,
       namebuf = 0xfffffffffeffffff <error: Cannot access memory at address 0xfffffffffeffffff>,
       shell_position = 0xfffffffffeffffff <error: Cannot access memory at address 0xfffffffffeffffff>,
       current_pool = 0x86ffffff,
       desired_pool = 0x8a000000,
       desired_matrix = 0x8e000000,
       current_matrix = 0x92000000,
       glyphs_initialized_p = false,
       resized_p = false,
       default_face_done_p = false,
       already_hscrolled_p = false,
       updated_p = false,
       minimize_tab_bar_window_p = false,
       minimize_tool_bar_window_p = false,
       fonts_changed = false,
       cursor_type_changed = false,
       redisplay = false,
       external_menu_bar = false,
       visible = 0,
       iconified = false,
       garbaged = false,
       wants_modeline = false,
       auto_raise = false,
       auto_lower = false,
       no_split = false,
       explicit_name = false,
       window_change = false,
       window_state_change = false,
       mouse_moved = false,
       pointer_invisible = false,
       frozen_window_starts = false,
       output_method = output_msdos_raw,
       tooltip = true,
       want_fullscreen = FULLSCREEN_NONE,
       vertical_scroll_bar_type = vertical_scroll_bar_none,
       horizontal_scroll_bars = false,
       undecorated = false,
       override_redirect = false,
       skip_taskbar = false,
       no_focus_on_map = false,
       no_accept_focus = false,
       z_group = z_group_none,
       no_special_glyphs = false,
       new_pixelwise = false,
       can_set_window_size = false,
       after_make_frame = false,
       tab_bar_redisplayed = false,
       tab_bar_resized = false,
       tool_bar_redisplayed = false,
       tool_bar_resized = false,
       inhibit_horizontal_resize = false,
       inhibit_vertical_resize = false,
       face_change = false,
       inhibit_clear_image_cache = false,
       change_stamp = -1711276032,
       number_of_windows = 2650800128,
       tab_bar_lines = -1577058304,
       tab_bar_height = 0,
       n_tab_bar_rows = -1509949440,
       n_tab_bar_items = 0,
       tool_bar_lines = -1442840576,
       tool_bar_height = 0,
       n_tool_bar_rows = -1375731712,
       n_tool_bar_items = 0,
       decode_mode_spec_buffer = 0xb2000000 <error: Cannot access memory at address 0xb2000000>,
       insert_line_cost = 0xb6000000,
       delete_line_cost = 0xba000000,
       insert_n_lines_cost = 0xbe000000,
       delete_n_lines_cost = 0xc2000000,
       text_cols = -973078528,
       text_lines = 0,
       total_cols = -905969664,
       total_lines = 0,
       text_width = -838860800,
       text_height = 0,
       new_width = -771751936,
       new_height = 0,
       left_pos = -704643072,
       top_pos = 0,
       pixel_width = -637534208,
       pixel_height = 0,
       win_gravity = -570425344,
       size_hint_flags = 0,
       border_width = -503316480,
       internal_border_width = 0,
       right_divider_width = -436207616,
       bottom_divider_width = 0,
       left_fringe_width = -369098752,
       right_fringe_width = 0,
       fringe_cols = -301989888,
       menu_bar_lines = 0,
       menu_bar_height = -234881024,
       column_width = 0,
       line_height = -167772160,
       terminal = 0xfa000000,
       output_data = {tty = 0xfe000000,
                      x = 0xfe000000,
                      w32 = 0xfe000000,
                      ns = 0xfe000000},
       font_driver_list = 0x102000000,
       wait_event_type = -33554432,
       desired_cursor = NO_CURSOR,
       cursor_width = 150994943,
       blink_off_cursor = FILLED_BOX_CURSOR,
       blink_off_cursor_width = -1610612736,
       config_scroll_bar_width = 146312,
       config_scroll_bar_cols = 0,
       config_scroll_bar_height = 0,
       config_scroll_bar_lines = 1912602624,
       cost_calculation_baud_rate = -33554432,
       alpha = {-1.9563002257081385e-103, -1.9604024332027206e-103},
       gamma = 4.9734297101505695e-316,
       extra_line_spacing = -2080374784,
       background_pixel = 85,
       foreground_pixel = 6755399524941824}





  reply	other threads:[~2020-02-01  2:28 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-09  1:55 bug#37671: 27.0.50; Segmentation fault with --fg-daemon on Linux Frank Terbeck
2019-10-10 11:03 ` Eli Zaretskii
2019-10-10 18:27   ` Frank Terbeck
2020-01-08  3:23     ` Frank Terbeck
2020-01-08 16:28       ` Eli Zaretskii
2020-01-08 16:39         ` Frank Terbeck
2020-02-01  2:28           ` Frank Terbeck [this message]
2020-02-01  8:33             ` Eli Zaretskii
2020-02-01  2:43           ` Frank Terbeck
2020-02-01  8:46             ` Eli Zaretskii
2020-02-01 11:28               ` Frank Terbeck
2020-02-01 12:04                 ` Eli Zaretskii
2020-02-01 12:49                   ` Frank Terbeck
2020-02-01 13:08                     ` Eli Zaretskii
2020-02-01 14:32                       ` Frank Terbeck
2020-02-15  8:28                         ` Eli Zaretskii
2020-02-15 11:32                           ` Frank Terbeck
2020-03-05  7:19                             ` Eli Zaretskii
2020-03-06  0:09                               ` Frank Terbeck
2020-03-06  7:51                                 ` Eli Zaretskii
2019-10-10 20:56 ` Paul Eggert
2019-10-11  7:02   ` Eli Zaretskii

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=87lfpnf3d2.fsf@ft.bewatermyfriend.org \
    --to=ft@bewatermyfriend.org \
    --cc=37671@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /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).