- * correct manlinks.sed script introduced in ncurses 5.1 to avoid
- using ERE "\+", which is not understood by standard versions of
- sed. This happens to work with GNU sed, but is not portable, and
- was the initial motivation for this release.
- * remove "hpux10.*" case from CF_SHARED_OPTS configure script macro.
- This differed from the "hpux*" case by using reversed symbolic
- links, which made the 5.1 version not match the configuration of
- 5.0 shared libraries.
- * guard against corrupt terminfo data:
- + modify tparm() to disallow arithmetic on strings, analyze the
- varargs list to read strings as strings and numbers as
- numbers.
- + modify tparm()'s internal function spop() to treat a null
- pointer as an empty string.
- + modify parse_format() in lib_tparm.c to ignore precision if
- it is longer than 10000.
- + rewrote limit checks in lib_mvcur.c using new functions
- _nc_safe_strcat(), etc. Made other related changes to check
- lengths used for strcat() and strcpy().
- * corrections to screen optimization:
- + added special case in lib_vidattr.c to reset underline and
- standout for devices that have no sgr0 defined.
- + change handling of non_dest_scroll_region in tty_update.c to
- clear text after it is shifted in rather than before shifting
- out. Also correct row computation.
- + modify rs2 capability in xterm-r6 and similar entries where
- cursor save/restore bracketed the sequence for resetting
- video attributes. The cursor restore would undo that.
- * UTF-8 support:
- + when checking LC_ALL, LC_CTYPE, and LANG environment
- variables for UTF-8 locale, ignore those which are set to an
- empty value, as per SUSV2.
- + encode 0xFFFD in UTF-8 with 3 bytes, not 2.
- + modify _nc_utf8_outch() to avoid sign-extension when checking
- for out-of-range value.
- * other library fixes:
- + added checks for an empty $HOME environment variable, to
- avoid retrieving terminfo descriptions from ./.terminfo .
- + change functions _nc_parse_entry() and postprocess_termcap()
- to avoid using strtok(), because it is non-reentrant.
- + initialize fds[] array to 0's in _nc_timed_wait(); apparently
- poll() only sets the revents members of that array when there
- is activity corresponding to the related file.
- + add a check for null pointer in Make_Enum_Type().
- + fix a heap problem with the c++ binding.
- + correct missing includes for <string.h> in several places,
- including the C++ binding. This is not noted by gcc unless we
- use the -fno-builtin option.
- * several fixes for tic:
- + add a check for empty buffers returned by fgets() in
- comp_scan.c next_char() function, in case tic is run on a
- non-text file (fixes a core dump).
- + modify tic to verify that its inputs are really files, in
- case someone tries to read a directory (or /dev/zero).
- + correct an uninitialized parameter to open_tempfile() in
- tic.c which made "tic -I" give an ambiguous error message
- about tmpnam.
- + correct logic in adjust_cancels(), which did not check both
- alternatives when reclassifying an extended name between
- boolean, number and string, causing an infinite loop in tic.
- * using new checks in tic for parameter counts in capability
- strings, found/fixed several errors both in the terminfo database
- and in the include/Caps file.
- + modified several terminfo capability strings, including the
- definitions for setaf, setab, in include/Caps to indicate
- that the entries are parameterized. This information is used
- to tell which strings are translated when converting to
- termcap. This fixes a problem where the generated termcap
- would contain a spurious "%p1" for the terminfo "%p1%d".
- + correct parameter counts in include/Caps for dclk as well as
- some printer-specific capabilities: csnm, defc, scs, scsd,
- smgtp, smglp.
- * various fixes for install scripts used to support configure
- --srcdir and --with-install-prefix.
- * correct several mismatches between manpage filename and ".TH"
- directives, renaming dft_fgbg.3x to default_colors.3x and
- menu_attribs.3x to menu_attributes.3x.
+ * add logic to tic for cancelling strings in user-defined
+ capabilities (this is needed for current konsole terminfo entry).
+ * modify mk-1st.awk so the generated makefile rules for linking or
+ installing shared libraries do not first remove the library, in
+ case it is in use, e.g., libncurses.so by /bin/sh.
+ * correct check for notimeout() in wgetch().
+ * fix a sign-extension bug in infocmp's repair_acsc() function.
+ * change winnstr() to stop at the end of the line.
+ * make Ada95 demo_panels() example work.
+ * fix for adding a non-spacing character at the beginning of a line.
+ * fill in extended-color pair to make colors work for
+ wide-characters using extended-colors.
+ * improve refresh of window on top of multi-column characters,
+ taking into account split characters on left/right window
+ boundaries.
+ * modify win_wchnstr() to ensure that only a base cell is returned
+ for each multi-column character.
+ * improve waddch() and winsch() handling of EILSEQ from mbrtowc() by
+ using unctrl() to display illegal bytes rather than trying to
+ append further bytes to make up a valid sequence.
+ * restore curs_set() state after endwin()/refresh()
+ * modify keyname() to use "^X" form only if meta() has been called,
+ or if keyname() is called without initializing curses, e.g., via
+ initscr() or newterm().
+ * modify unctrl() to check codes in 128-255 range versus isprint().
+ If they are not printable, and locale was set, use a "M-" or "~"
+ sequence.
+ * improve resizeterm() by moving ripped-off lines, and repainting
+ the soft-keys.
+ * modify form library to accept control characters such as newline
+ in set_field_buffer(), which is compatible with Solaris.
+ * use NCURSES_MOUSE_MASK() in definition of BUTTON_RELEASE(), etc.,
+ to make those work properly with the --enable-ext-mouse
+ configuration
+ * correct some functions in Ada95 binding which were using return
+ value from C where none was returned.
+ * reviewed/fixed issues reported by Coverity and Klocwork tools.