Subject: Re: bug#63187: 30.0.50; Tail of longer lines painted after end of nearby lines on macOS

From: Alan Third <[email-masked]>
Date: Fri, 23 Jun 2023 09:48:26 +0100

On Thu, Jun 15, 2023 at 10:17:11PM -0400, Aaron Jensen wrote:
> 
> I saw a paint issue today. The "<" to the left of the indented (and
> redacted) lines 65-68 was an artifact. It kept painting there even
> while scrolling until I resized the window, then they all disappeared.
> They appeared one at a time while scrolling, as if the painting of one
> the one on line 63 was "fixed" in the window position as I was
> scrolling (likely it just didn't get cleared as necessary).

It could be worth forcing the system to display when we want it to,
rather than leaving it to decide itself... I don't think this will
make any difference, but perhaps it's worth a shot.

modified   src/nsterm.m
@@ -1089,6 +1089,8 @@ static NSRect constrain_frame_rect(NSRect frameRect, bool isFullscreen)
   [view unlockFocus];
 #if defined (NS_IMPL_GNUSTEP) || MAC_OS_X_VERSION_MIN_REQUIRED < 101400
   [[view window] flushWindow];
+#else
+  [view display];
 #endif
 
   unblock_input ();

This feels to me like things are happening out of order or
simultaneously, but I don't really see how that could be happening.
The drawing system throws out errors if you try to use it from sub
threads, so it should be obvious if there was some multi-threading
issue...

-- 
Alan Third