History log of /src/lib/libcurses/in_wchstr.c |
Revision | | Date | Author | Comments |
1.11 |
| 23-Dec-2024 |
blymn | Sprinkle about some cycle wasting checks for the win pointer being null. Unfortunately, ncurses does this and there is some sloppy code out there that relies on the check resulting in segfaults in NetBSD curses which then, of course, gets blamed for the error.
|
1.10 |
| 25-Jan-2022 |
blymn | branches: 1.10.4; 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.
|
1.9 |
| 15-Aug-2021 |
rillig | libcurses: fix usage of __warn_references
Since that macro can expand to an empty token list, it adds its own semicolon as needed. Removing the extra semicolon fixes the lint warnings about empty declarations. These empty declarations are a GCC extension.
|
1.8 |
| 09-Jun-2019 |
blymn | 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.
|
1.7 |
| 20-May-2019 |
blymn | 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.
|
1.6 |
| 24-Feb-2019 |
roy | Fix warn macro usage.
Thanks to rofl0r.
|
1.5 |
| 22-Nov-2018 |
uwe | Drop HAVE_WCHAR ifdefs from code that is not even compiled with !HAVE_WCHAR.
We still try to mainain the ability to build our curses with !HAVE_WCHAR, but it doesn't make sense to provide stubs for new wide API functions that just error out when !HAVE_WCHAR. Any code that only uses old API (and can work with !HAVE_WCHAR curses) doesn't use those new functions. The code that uses new API obviosly cannot work when all the new API is stubbed out.
So the plan is to drop the stubs. This commit does that for files that are not even compiled with !HAVE_WCHAR (not only those stubs are useless, they were not even there to begin with).
Same object code is generated for the normal HAVE_WCHAR case. Nothing is even recompiled for !HAVE_WCHAR.
Ok by blymn@ jdc@ roy@
|
1.4 |
| 06-Jan-2017 |
roy | branches: 1.4.12; 1.4.14; KNF. Normalise coding style. White space police. Sprinkle some extra braces to make the flow more clear.
No functional changes.
|
1.3 |
| 22-Jul-2009 |
roy | branches: 1.3.28; Prepare curses for the possibility of changing from termcap to terminfo. term.h #defines lines, pad_char and no_color_video macros which conflict with existing curses code. We change lines to alines and nlines depending on use, pad_char to padchar and no_color_video becomes no_color_attributes but with a strong alias from no_color_video.
|
1.2 |
| 28-May-2007 |
blymn | Merge in wide curses code done as a Summer of Code project by Ruibiao Qiu.
|
1.1 |
| 21-Jan-2007 |
blymn | branches: 1.1.2; Wide curses merge
|
1.1.2.1 |
| 21-Jan-2007 |
blymn | Merge wide curses.
|
1.3.28.1 |
| 07-Jan-2017 |
pgoyette | Sync with HEAD. (Note that most of these changes are simply $NetBSD$ tag issues.)
|
1.4.14.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.4.12.1 |
| 26-Nov-2018 |
pgoyette | Sync with HEAD, resolve a couple of conflicts
|
1.10.4.1 |
| 02-Aug-2025 |
perseant | Sync with HEAD
|