History log of /netbsd/lib/libcurses/refresh.c (Results 1 – 25 of 128)
Revision Date Author Comments
# 94190436 24-Jun-2023 msaitoh <msaitoh@NetBSD.org>

Fix typo in comment.


# 0b4c7f93 28-Apr-2023 blymn <blymn@NetBSD.org>

Don't set the clear_to_eol variable in doupdate to NULL, this was a
leftover from previous code that makes no sense and makes worms(6)
crash randomly. Thanks to kre@ for reporting this.


# 57de6460 05-Dec-2022 blymn <blymn@NetBSD.org>

Revert previous change, it is not correct.


# 4755c3dc 30-Nov-2022 blymn <blymn@NetBSD.org>

When performing a scroll, check the last line of the region is the same
on virtscr and curscr because the indexes past are supposed to be
one *past* the last matching line (they may actually match if

When performing a scroll, check the last line of the region is the same
on virtscr and curscr because the indexes past are supposed to be
one *past* the last matching line (they may actually match if the line is
at the bottom of the screen). Iff they don't match reduce the scroll
region size by one so we don't scroll non-matching lines, also check
if the region is then 0 after the decrement and just return if it was.

show more ...


# 33229d3e 19-Oct-2022 blymn <blymn@NetBSD.org>

Fixes for lib/56926 amongst other things:
- plod now correctly accounts for wide characters when plodding
- use erase line when in color mode if the terminal has the capability
- ensure that the C

Fixes for lib/56926 amongst other things:
- plod now correctly accounts for wide characters when plodding
- use erase line when in color mode if the terminal has the capability
- ensure that the CA_CONTINUATION flag is applied consistently to the
subsequent characters in a wide character.
- fix a bunch of refresh bugs that caused inconsistent placement of
wide characters.

show more ...


# b496d403 03-May-2022 blymn <blymn@NetBSD.org>

* Don't redraw the background if the new background character is the
same as the old one. This prevents excessive redraws in some
applications.

* Fix bug introduced when wbkgrndset was fixed

* Don't redraw the background if the new background character is the
same as the old one. This prevents excessive redraws in some
applications.

* Fix bug introduced when wbkgrndset was fixed, we cannot blindly
replace any instance of the old background character with the new one
because some of those characters were put there by the application
leading to display corruption. So flag characters as background when
they are erased and only update the flagged characters when setting
the background.

show more ...


# dbcc9cde 19-Apr-2022 blymn <blymn@NetBSD.org>

fix for PR 55496

* Fix bkgrndset so that it actually sets the background character in
in line with the SUSv2 specification.

* Add an internal function to copy a complex character

* Make the

fix for PR 55496

* Fix bkgrndset so that it actually sets the background character in
in line with the SUSv2 specification.

* Add an internal function to copy a complex character

* Make the previously static celleq function into a libcurses private
function so that it can be called in other files.

show more ...


# 39a9d1a6 13-Apr-2022 pgoyette <pgoyette@NetBSD.org>

Fix build (enabled only for MKDEBUG?)


# 4214b568 12-Apr-2022 blymn <blymn@NetBSD.org>

Fix compile breakage when wide char support is disabled.


# 38963e55 12-Apr-2022 blymn <blymn@NetBSD.org>

Make the default colour pair be pair 0 which appears to match other
curses implementations.


# f89783a2 25-Jan-2022 blymn <blymn@NetBSD.org>

Correct (hopefully) the handling of wide characters.

* Remove the WCOL family of macros, these were "stealing" the upper bits
of a character attribute to store the column width of a character. No

Correct (hopefully) the handling of wide characters.

* Remove the WCOL family of macros, these were "stealing" the upper bits
of a character attribute to store the column width of a character. No
warning was given about this in curses.h which meant it was easy to
accidentally reuse the bits in use by the WCOL macros (we already did).
Add couple of 16bit ints to the character structure iff HAVE_WCHAR is
true to hold the display width and wide char related flags (just
continuation at the moment)
* Convert all instances of WCOL macros to just reference the column width
in the char structure so it is not obfuscated.
* Fix cursor positioning so placing a cursor in the middle of a wide char
actually does just that.
* Fix plod so it understands that if the cursor is going to be positioned
in the middle of a wide char it cannot just reprint the char to get there.
* Fix plodput so it correctly counts the number of output characters for
wide characters.
* Fix slk routines to properly size the wctomb() buffer.

show more ...


# 0d144a4b 17-Dec-2021 uwe <uwe@NetBSD.org>

curses: spell "foreground" correctly in comments


# 8e72e4f7 07-Sep-2021 rin <rin@NetBSD.org>

PR lib/56388

For __newwin() and __resizewin(), the line hash was calculated as if
HAVE_WCHAR is disabled.

Fix this bug by refactoring __hash_line() function, which calculates
the line hash by an ap

PR lib/56388

For __newwin() and __resizewin(), the line hash was calculated as if
HAVE_WCHAR is disabled.

Fix this bug by refactoring __hash_line() function, which calculates
the line hash by an appropriate method.

show more ...


# 671612ef 06-Sep-2021 rin <rin@NetBSD.org>

Style fixes most for __CTRACE().


# dd26fe31 06-Sep-2021 rin <rin@NetBSD.org>

Expand __CTRACE() to __nothing #ifndef DEBUG.

Remove most of #ifdef DEBUG around __CTRACE() calls.

No binary changes, except for line numbers for assert().


# 7a9bf40e 08-May-2021 mrg <mrg@NetBSD.org>

avoid accessing stack garbage.

on arm64eb resuming vi(1) would often crash. in makech(), the 'csp'
variable is either set to current window data, or a local stack
variable's address '&blank'. the

avoid accessing stack garbage.

on arm64eb resuming vi(1) would often crash. in makech(), the 'csp'
variable is either set to current window data, or a local stack
variable's address '&blank'. the window data has many lines of info
stored, and 'csp++' is used per line here. unfortunately, a case
existed where 'csp++' operated on csp initialised from '&blank' which
eventually crashes when, on my display with 160 columns and 'csp + 155'
exceeds the mapped stack and crashes.

match the '!_cursesi_screen->curwin' conditional that initialises csp,
and avoid csp++ here. assert() that csp != &blank in both places that
modify csp.

thanks to jdc@ and mlelstv@.

XXX: possibly also should avoid the putch() here as well.

show more ...


# 0ead1e8c 24-Feb-2020 rin <rin@NetBSD.org>

0x%p --> %p for non-external codes.


# a5d2c93a 09-Jun-2019 blymn <blymn@NetBSD.org>

Rework previous fix for getch cursor position when cursor is moved
without refresh. If the window is not dirty but the window cursor
position does not match curscr then move the cursor. This fixes

Rework previous fix for getch cursor position when cursor is moved
without refresh. If the window is not dirty but the window cursor
position does not match curscr then move the cursor. This fixes
the issues seen in PR lib/54263.

show more ...


# 5bb367be 20-May-2019 blymn <blymn@NetBSD.org>

Back out incorrect fix for PR 53617 and fix it in a different way.
Keep track of the cursor location, if getch is called without a refresh
and without pending updates (dirty windows) then move the cu

Back out incorrect fix for PR 53617 and fix it in a different way.
Keep track of the cursor location, if getch is called without a refresh
and without pending updates (dirty windows) then move the cursor to the
correct location directly. Doing this prevents unnecessary refreshes.

show more ...


# 497470b8 12-May-2019 blymn <blymn@NetBSD.org>

Add more debug to _wnoutrefresh


# 80e273d2 24-Apr-2019 blymn <blymn@NetBSD.org>

Add/improve debug output for some routines.


# 8d07f8b3 29-Mar-2019 roy <roy@NetBSD.org>

Minor adjustment to prior to match putch


# 52d5db72 29-Mar-2019 roy <roy@NetBSD.org>

Use WCOL rather than wcwidth(3) as we should already know the width
during refresh.
Ensure the character width is not negative when advancing during refresh
(unlikely) and we actually have something

Use WCOL rather than wcwidth(3) as we should already know the width
during refresh.
Ensure the character width is not negative when advancing during refresh
(unlikely) and we actually have something to insert in the lower right
corner depending on terminal caps.

Fixes PR lib/54085

show more ...


# ed26f7ab 06-Jan-2019 uwe <uwe@NetBSD.org>

_wnoutrefresh - extend current position checks.

Also verify that dwin->cury >= begy (ditto for x), i.e. for pads make
sure that the current position is after the beginning of the displayed
portion.

_wnoutrefresh - extend current position checks.

Also verify that dwin->cury >= begy (ditto for x), i.e. for pads make
sure that the current position is after the beginning of the displayed
portion. While here refactor the checks for better readability.

We should probably combine the y and x checks b/c if one of them is
not in the range, the current position as a whole is not in the range
and it doesn't make sense to pick and set just the y or just the x
part of it.

show more ...


# b8fa6643 06-Jan-2019 uwe <uwe@NetBSD.org>

_wnoutrefresh - fix current position checks for pads

maxy is an absolute value and should not be adjusted for begy when we
check also absolute cury. Note that this change does not affect
calculatio

_wnoutrefresh - fix current position checks for pads

maxy is an absolute value and should not be adjusted for begy when we
check also absolute cury. Note that this change does not affect
calculations for normal windows as for them we always pass zero for
begy. Ditto for x.

show more ...


123456