BBS:      TELESC.NET.BR
Assunto:  src/conio/bitmap_con.c
De:       Deuc¨
Data:     Sat, 14 Mar 2026 18:14:10 -0700
-----------------------------------------------------------
https://gitlab.synchro.net/main/sbbs/-/commit/5bffab544f4fb52d66e4cf4a
Modified Files:
	src/conio/bitmap_con.c
Log Message:
Fix a handful of subtle bugs caught running the terminal test...

1) bitmap_draw_from_vmem() had some math wrong, which could result
   in a frame or two of the screen being drawn split. This was visible
   as a flash of the status bar being in the middle of the screen.
2) With the update to a rwlock, the force parameter to update_from_vmem()
   NEEDS to ensure a redraw is done for consistency. While eventual
   consisency is fine for most cases, getting the checksum of a region
   strictly requires the region is fully updated first.
3) vstat was being written in two cases with the read lock held...
   one was when resetting the "changed" flag to false during an
   update, and the other was when adjusting the reveal bit in prestel
   mode.
4) bitmap_movetext() and the corresponding bitmap_movetext_screen()
   almost certainly had a bug in them. They basically did the exact
   same thing, just one to the vmem and the other to the screen data.
   How they went about that however was wildly different. Rewrote
   most of these functions so they re-use calculations and don't
   both do hard-to-understand math.
n
---
  mSynchronetn  hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net

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