commit acebaa793f1b18ad54bccffe7ad07fef8e1cebe1 (HEAD, refs/remotes/origin/master) Author: Eli Zaretskii Date: Sun Jul 23 14:49:18 2023 -0400 ; * src/xdisp.c (mark_window_display_accurate_1): Avoid more aborts. diff --git a/src/xdisp.c b/src/xdisp.c index 8a6e2b0f6d6..e061b602e0d 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -17498,7 +17498,13 @@ mark_window_display_accurate_1 (struct window *w, bool accurate_p) else w->last_point = marker_position (w->pointm); - if (w->window_end_vpos < w->current_matrix->nrows) + struct glyph_row *row; + /* These conditions should be consistent with CHECK_WINDOW_END. */ + if (w->window_end_vpos < w->current_matrix->nrows + && ((row = MATRIX_ROW (w->current_matrix, w->window_end_vpos), + !row->enabled_p + || MATRIX_ROW_DISPLAYS_TEXT_P (row) + || MATRIX_ROW_VPOS (row, w->current_matrix) == 0))) w->window_end_valid = true; w->update_mode_line = false; w->preserve_vscroll_p = false; commit bbd91a05fa83b7b2a651d5386f4592db405bbcda Author: Eli Zaretskii Date: Sun Jul 23 13:44:40 2023 -0400 Fix rare aborts in CHECK_WINDOW_END Those aborts happen because a window's window_end_vpos value is inconsistent with the current matrix's number of rows, which happens after resizing the mini-window. * src/xdisp.c (mark_window_display_accurate_1): Don't validate the window_end_valid flag if window_end_vpos is inconsistent with the current_matrix's number of rows. This happens, e.g., when Edebug wants to show a value in the mini-window that causes it to resize, as the window above the mini-window was usually already redisplayed, and we think its display is accurate. diff --git a/src/xdisp.c b/src/xdisp.c index 540fdbb0b07..8a6e2b0f6d6 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -17498,7 +17498,8 @@ mark_window_display_accurate_1 (struct window *w, bool accurate_p) else w->last_point = marker_position (w->pointm); - w->window_end_valid = true; + if (w->window_end_vpos < w->current_matrix->nrows) + w->window_end_valid = true; w->update_mode_line = false; w->preserve_vscroll_p = false; } commit 865817633f6e4b548c9d138fdf792394d021e2f5 Author: Basil L. Contovounesios Date: Sun Jul 23 08:39:17 2023 +0100 ; * src/pdumper.c (dump_overlay): Update hash. This follows commit 7ac947f34c745c61f8acc1fe2452a2c720d57a0d of 2023-07-13 "; * src/lisp.h (struct Lisp_Overlay): Update commentary (bug#64580)." diff --git a/src/pdumper.c b/src/pdumper.c index 34998549cc8..5a3d58ee841 100644 --- a/src/pdumper.c +++ b/src/pdumper.c @@ -2178,7 +2178,7 @@ dump_interval_node (struct dump_context *ctx, struct itree_node *node, static dump_off dump_overlay (struct dump_context *ctx, const struct Lisp_Overlay *overlay) { -#if CHECK_STRUCTS && !defined (HASH_Lisp_Overlay_EB4C05D8D2) +#if CHECK_STRUCTS && !defined (HASH_Lisp_Overlay_5F9D7E02FC) # error "Lisp_Overlay changed. See CHECK_STRUCTS comment in config.h." #endif START_DUMP_PVEC (ctx, &overlay->header, struct Lisp_Overlay, out);