204861cb5f
just use the same mutex locking as sc cn putc so they have the same defects. The locking calls to acquire the lock are actually in sc cn open and close. Ungrab has to unlock, although this opens a race window. Change the direct mutex lock calls in sc cn putc to the new locking functions via the open and close functions. Putc also has to unlock, but doesn't keep the screen open like grab. Screen open and close reduce to locking, except screen open for grab also attempts to switch the screen. Keyboard locking is more difficult and still null, even when keyboard input calls screen functions, except some of the functions have locks too deep to work right. This organization gives a single place to fix some of the locking. |
||
---|---|---|
.. | ||
apm | ||
blank | ||
daemon | ||
dragon | ||
fade | ||
fire | ||
green | ||
logo | ||
plasma | ||
rain | ||
snake | ||
star | ||
warp | ||
scgfbrndr.c | ||
schistory.c | ||
scmouse.c | ||
scterm-teken.c | ||
scterm.c | ||
scvesactl.c | ||
scvgarndr.c | ||
scvidctl.c | ||
scvtb.c | ||
syscons.c | ||
syscons.h | ||
sysmouse.c |