Subject: bug#32258: 27.0.50; Crash on minimizing/maximizing Emacs frame from taskbar [RHEL 6.8 GTK2]

From: Eli Zaretskii <[email-masked]>
Date: Thu, 26 Jul 2018 23:13:53 +0300

> Date: Thu, 26 Jul 2018 22:20:36 +0300
> From: Eli Zaretskii <[email-masked]>
> Cc: [email-masked]
> 
> But since you cannot trigger the problem at will, it sounds
> impractical.  So it sounds like we are stuck, sorry.

OK, stabbing in the dark here: in this fragment of xdisp.c:

      /* Redisplay, then check if cursor has been set during the
	 redisplay.  Give up if new fonts were loaded.  */
      /* We used to issue a CHECK_MARGINS argument to try_window here,
	 but this causes scrolling to fail when point begins inside
	 the scroll margin (bug#148) -- cyd  */
      if (!try_window (window, startp, 0))
	{
	  w->force_start = true;
	  clear_glyph_matrix (w->desired_matrix);
	  goto need_larger_matrices;
	}

which on the current trunk is around line 16920, please insert this
line:

      clear_glyph_matrix (w->desired_matrix);

before this line:

      if (!try_window (window, startp, 0))

Then try running with this change for a while, and see if it solves
the assertion violations and doesn't produce any unintended adverse
effects.

Thanks.