BBS:      TELESC.NET.BR
Assunto:  src/conio/bitmap_con.c
De:       Deuc¨
Data:     Sun, 26 Apr 2026 20:05:06 -0700
-----------------------------------------------------------
https://gitlab.synchro.net/main/sbbs/-/commit/b2fe4d3bbf7441aa3584bd1b
Modified Files:
	src/conio/bitmap_con.c
Log Message:
SyncTERM: redraw Prestel double-height bottom on top-row content change

When a Prestel double-height "top" row is overwritten with new content
without the DOUBLE_HEIGHT bit toggling (e.g., a frame swap from
"Welcome" to "Sign In"), the bottom row's own vmem cells stay
unchanged.  The per-cell diff in update_from_vmem then skipped the
bottom row, leaving it showing the bottom-half pixels of the previous
top row's glyph.

Fix at the write site in bitmap_vmem_puttext_locked: when a cell with
the DH bit set has its content actually changed, mark the
bitmap_drawn entry one row below dirty (CIOLIB_BG_DIRTY) so the next
update redraws it.  May over-invalidate one row when the cell turns
out to be a Prestel bottom rather than a top, but the dirty flag does
not propagate further.

Fixes ticket 243.

Co-Authored-By: Claude Opus 4.7 (1M context) 
n
---
  mSynchronetn  hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net

-----------------------------------------------------------
[Voltar]