From ecdab720f2e27ea0c0992749ba5cd1b3d265437f Mon Sep 17 00:00:00 2001 From: Nick Briggs Date: Sat, 14 Dec 2024 12:57:24 -0800 Subject: [PATCH] Missing call to flush_display_lineregion() for SDL in PILOTBITBLT When the target for a PILOTBITBLT operation is the display bitmap, and the display bitmap is not memory-mapped from the actual display, the display subsystem needs to be notified to flush the Lisp display bitmap to the display so that changes are immediately visible. The mechanism was present for X11 displays but needed to be implemented for SDL displays. --- src/bitblt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bitblt.c b/src/bitblt.c index 96de42d..029ca6f 100644 --- a/src/bitblt.c +++ b/src/bitblt.c @@ -126,7 +126,7 @@ LispPTR N_OP_pilotbitblt(LispPTR pilot_bt_tbl, LispPTR tos) if (displayflg) (currentdsp->mouse_visible)(IOPage->dlmousex, IOPage->dlmousey); #endif /* SUNDISPLAY / DOS */ -#ifdef XWINDOW +#if defined(XWINDOW) || defined(SDL) flush_display_lineregion(dx, dstbase, w, h); #endif /* XWINDOW */