+ continue integrating "sp-funcs" by Juergen Pfeifer (incomplete).
This change finishes merging for menu and panel libraries, does
part of the form library.
+ extend ansi.sys pfkey capability from kf1-kf10 to kf1-kf48, moving
function key definitions from emx-base for consistency -TD
+ correct missing final 'p' in pfkey capability of ansi.sys-old (report
by Kalle Olavi Niemitalo).
+ improve test/ncurses.c 'F' test, show combining characters in color.
+ quiet a false report by cppcheck in c++/cursesw.cc by eliminating
a temporary variable.
+ use _nc_doalloc() rather than realloc() in a few places in ncurses
library to avoid leak in out-of-memory condition (reports by William
Egert and Martin Ettl based on cppcheck tool).
+ add --with-ncurses-wrap-prefix option to test/configure (discussion
with Charles Wilson).
+ use ncurses*-config scripts if available for test/configure.
+ update test/aclocal.m4 and test/configure
> patches by Charles Wilson:
+ modify CF_WITH_LIBTOOL configure check to allow unreleased libtool
version numbers (e.g. which include alphabetic chars, as well as
digits, after the final '.').
+ improve use of -no-undefined option for libtool by setting an
intermediate variable LT_UNDEF in the configure script, and then
using that in the libtool link-commands.
+ fix an missing use of NCURSES_PUBLIC_VAR() in tinfo/MKcodes.awk
from 2009031 changes.
+ improve mk-1st.awk script by writing separate cases for the
LIBTOOL_LINK command, depending on which library (ncurses, ticlib,
termlib) is to be linked.
+ modify configure.in to allow broken-linker configurations, not just
enable-reentrant, to set public wrap prefix.
+ continue integrating "sp-funcs" by Juergen Pfeifer (incomplete).
+ modify declaration of cur_term when broken-linker is used, but
enable-reentrant is not, to match pre-5.7 (report by Charles Wilson).
+ add configure script --enable-sp-funcs to enable the new set of
extended functions.
+ start integrating patches by Juergen Pfeifer:
+ add extended functions which specify the SCREEN pointer for several
curses functions which use the global SP (these are incomplete;
some internals work is needed to complete these).
+ add special cases to configure script for MinGW port.
+ modify init_pair() to allow caller to create extra color pairs beyond
the color_pairs limit, which use default colors (request by Emanuele
Giaquinta).
+ add misc/terminfo.tmp and misc/*.pc to "sources" rule.
+ fix typo "==" where "=" is needed in ncurses-config.in and
gen-pkgconfig.in files (Debian #512161).
+ add -shared option to MK_SHARED_LIB when -Bsharable is used, for
*BSD's, without which "main" might be one of the shared library's
dependencies (report/analysis by Ken Dickey).
+ modify waddch_literal(), updating line-pointer after a multicolumn
character is found to not fit on the current row, and wrapping is
done. Since the line-pointer was not updated, the wrapped
multicolumn character was written to the beginning of the current row
(cf: 20041023, reported by "Nick" regarding problem with ncmpc
http://musicpd.org/mantis/bug_view_page.php?bug_id=1930).
+ move del_curterm() call from _nc_freeall() to _nc_leaks_tinfo() to
work for progs/clear, progs/tabs, etc.
+ correct buffer-size after internal resizing of wide-character
set_field_buffer(), broken in 20081018 changes (report by Mike Gran).
+ add "-i" option to test/filter.c to tell it to use initscr() rather
than newterm(), to investigate report on comp.unix.programmer that
ncurses would clear the screen in that case (it does not - the issue
was xterm's alternate screen feature).
+ add check in mouse-driver to disable connection if GPM returns a
zero, indicating that the connection is closed (Debian #506717,
adapted from patch by Samuel Thibault).
+ improve a workaround in adding wide-characters, when a control
character is found. The library (cf: 20040207) uses unctrl() to
obtain a printable version of the control character, but was not
passing color or video attributes.
+ improve test/ncurses.c 'a' test, using unctrl() more consistently to
display meta-characters.
+ turn on _XOPEN_CURSES definition in curses.h
+ add eterm-color entry (report by Vincent Lefevre) -TD
+ correct use of key_name() in test/ncurses.c 'A' test, which only
displays wide-characters, not key-codes since 20070612 (report by
Ricardo Cantu).
+ change _nc_has_mouse() to has_mouse(), reflect its use in C++ and
Ada95 (patch by Juergen Pfeifer).
+ document in TO-DO an issue with Cygwin's package for GNAT (report
by Mike Dennison).
+ improve error-checking of command-line options in "tabs" program.
+ build-fixes for OS/2 EMX.
+ modify form library to accept control characters such as newline
in set_field_buffer(), which is compatible with Solaris (report by
Nit Khair).
+ modify configure script to assume --without-hashed-db when
--disable-database is used.
+ add "-e" option in ncurses/Makefile.in when generating source-files
to force earlier exit if the build environment fails unexpectedly
(prompted by patch by Adrian Bunk).
+ change configure script to use CF_UTF8_LIB, improved variant of
CF_LIBUTF8.
+ some build-fixes for configure --disable-ext-funcs (incomplete, but
works for C/C++ parts).
+ improve configure-check for awks unable to handle large strings, e.g.
AIX 5.1 whose awk silently gives up on large printf's.
+ fix build for --with-dmalloc by workaround for redefinition of
strndup between string.h and dmalloc.h
+ fix build for --disable-sigwinch
+ add environment variable NCURSES_GPM_TERMS to allow override to use
GPM on terminals other than "linux", etc.
+ disable GPM mouse support when $TERM does not happen to contain
"linux", since Gpm_Open() no longer limits its assertion to terminals
that it might handle, e.g., within "screen" in xterm.
+ reset mouse file-descriptor when unloading GPM library (report by
Miroslav Lichvar).
+ fix build for --disable-leaks --enable-widec --with-termlib
> patch by Juergen Pfeifer:
+ use improved initialization for soft-label keys in Ada95 sample code.
+ discard internal symbol _nc_slk_format (unused since 20080112).
+ move call of slk_paint_info() from _nc_slk_initialize() to
slk_intern_refresh(), improving initialization.
+ fix shared-library rules for cygwin with tic- and tinfo-libraries.
+ fix a memory leak when failure to connect to GPM.
+ correct check for notimeout() in wgetch() (report on linux.redhat
newsgroup by FurtiveBertie).
+ add an example warning-suppression file for valgrind,
misc/ncurses.supp (based on example from Reuben Thomas)
+ fixes to make Ada95 demo_panels() example work.
+ modify Ada95 'rain' test program to accept keyboard commands like the
C-version.
+ modify BeOS-specific ifdef's to build on Haiku (patch by Scott
Mccreary).
+ add configure-check to see if the std namespace is legal for cerr
and endl, to fix a build issue with Tru64.
+ consistently use NCURSES_BOOL in lib_gen.c
+ filter #line's from lib_gen.c
+ change delimiter in MKlib_gen.sh from '%' to '@', to avoid
substitution by IBM xlc to '#' as part of its extensions to digraphs.
+ update config.guess, config.sub from
http://savannah.gnu.org/projects/config
(caveat - its maintainer removed support for older Linux systems).
+ modify configure check for pthread library to work with OSF/1 5.1,
which uses #define's to associate its header and library.
+ use pthread_mutexattr_init() for initializing pthread_mutexattr_t,
makes threaded code work on HPUX 11.23
+ fix a bug in demo_menus in freeing menus (cf: 20080804).
+ modify configure script for the case where tic library is used (and
possibly renamed) to remove its dependency upon ncurses/ncursew
library (patch by Dr Werner Fink).
+ correct manpage for menu_fore() which gave wrong default for
the attribute used to display a selected entry (report by Mike Gran).
+ add Eterm-256color, Eterm-88color and rxvt-88color (prompted by
Debian #495815) -TD
+ add configure option --enable-weak-symbols to turn on new feature.
+ add configure-check for availability of weak symbols.
+ modify linkage with pthread library to use weak symbols so that
applications not linked to that library will not use the mutexes,
etc. This relies on gcc, and may be platform-specific (patch by Dr
Werner Fink).
+ add note to INSTALL to document limitation of renaming of tic library
using the --with-ticlib configure option (report by Dr Werner Fink).
+ document (in manpage) why tputs does not detect I/O errors (prompted
by comments by Samuel Thibault).
+ fix remaining warnings from Klocwork report.
+ modify _nc_panelhook() data to account for a permanent memory leak.
+ fix memory leaks in test/demo_menus
+ fix most warnings from Klocwork tool (report by Larry Zhou).
+ modify configure script CF_XOPEN_SOURCE macro to add case for
"dragonfly" from xterm #236 changes.
+ modify configure script --with-hashed-db to let $LIBS override the
search for the db library (prompted by report by Samson Pierre).
+ correct some ifdef's needed for the broken-linker configuration.
+ make debugging library's $BAUDRATE feature work for termcap
interface.
+ make $NCURSES_NO_PADDING feature work for termcap interface (prompted
by comment on FreeBSD mailing list).
+ add screen.mlterm terminfo entry -TD
+ improve mlterm and mlterm+pcfkeys terminfo entries -TD
+ regenerated html documentation.
+ expand manpage description of parameters for form_driver() and
menu_driver() (prompted by discussion with Adam Spragg).
+ add null-pointer checks for cur_term in baudrate() and
def_shell_mode(), def_prog_mode()
+ fix some memory leaks in delscreen() and wide acs.
+ finish changes to wgetch(), making it switch as needed to the
window's actual screen when calling wrefresh() and wgetnstr(). That
allows wgetch() to get used concurrently in different threads with
some minor restrictions, e.g., the application should not delete a
window which is being used in a wgetch().
+ simplify mutex's, combining the window- and screen-mutex's.
+ modify wgetch() to use the screen which corresponds to its window
parameter rather than relying on SP; some dependent functions still
use SP internally.
+ factor out most use of SP in lib_mouse.c, using parameter.
+ add internal _nc_keyname(), replacing keyname() to associate with a
particular SCREEN rather than the global SP.
+ add internal _nc_unctrl(), replacing unctrl() to associate with a
particular SCREEN rather than the global SP.
+ add internal _nc_tracemouse(), replacing _tracemouse() to eliminate
its associated global buffer _nc_globals.tracemse_buf now in SCREEN.
+ add internal _nc_tracechar(), replacing _tracechar() to use SCREEN in
preference to the global _nc_globals.tracechr_buf buffer.
+ modify configure script to note that --enable-ext-colors and
--enable-ext-mouse are not experimental, but extensions from
the ncurses ABI 5.
+ corrected manpage description of setcchar() (discussion with
Emanuele Giaquinta).
+ fix for adding a non-spacing character at the beginning of a line
(report/patch by Miroslav Lichvar).
+ modify screen.* terminfo entries using new screen+fkeys to fix
overridden keys in screen.rxvt (Debian #478094) -TD
+ modify internal interfaces to reduce wgetch()'s dependency on the
global SP.
+ simplify some loops with macros each_screen(), each_window() and
each_ripoff().
+ continue modifying test/ditto.c toward making it demonstrate
multithreaded use_screen(), using fifos to pass data between screens.
+ fix typo in form.3x (report by Mike Gran).
+ change test/ditto.c to use openpty() and xterm.
+ add locks for copywin(), dupwin(), overlap(), overlay() on their
window parameters.
+ add locks for initscr() and newterm() on updates to the SCREEN
pointer.
+ finish table in curs_thread.3x manpage.
+ begin table in curs_thread.3x manpage describing the scope of data
used by each function (or symbol) for threading analysis.
+ add null-pointer checks to setsyx() and getsyx() (prompted by
discussion by Martin v. Lowis and Jeroen Ruigrok van der Werven on
python-dev2 mailing list).
+ add null-pointer checks in set_term() and delscreen().
+ move _nc_windows into _nc_globals, since windows can be pads, which
are not associated with a particular screen.
+ change use_screen() to pass the SCREEN* parameter rather than
stdscr to the callback function.
+ force libtool to use tag for 'CC' in case it does not detect this,
e.g., on aix when using CC=powerpc-ibm-aix5.3.0.0-gcc
(report/patch by Michael Haubenwallner).
+ override OBJEXT to "lo" when building with libtool, to work on
platforms such as AIX where libtool supports only static libraries
(report/patch by Michael Haubenwallner).
+ add configure --with-pthread option, for building with the POSIX
thread library.
+ fill in extended-color pair two more places in wbkgrndset() and
waddch_nosync() (prompted by Sedeno's patch).
+ fill in extended-color pair in _nc_build_wch() to make colors work
for wide-characters using extended-colors (patch by Alejandro R
Sedeno).
+ add x/X toggles to ncurses.c C color test to test/demo
wide-characters with extended-colors.
+ add a/A toggles to ncurses.c c/C color tests.
+ modify test/ditto.c to use use_screen().
+ finish modifying test/rain.c to demonstrate threads.
+ start modifying test/rain.c for threading demo.
+ modify test/ncurses.c to make 'f' test accept the f/F/b/F/</> toggles
that the 'F' accepts.
+ modify test/worm.c to show trail in reverse-video when other threads
are working concurrently.
+ fix a deadlock from improper nesting of mutexes for windowlist and
window.
+ fix a size-difference in _nc_globals which caused hanging of mutex
lock/unlock when termlib was built separately.
+ avoid using nanosleep() in threaded configuration since that often
is implemented to suspend the entire process.
+ modify _nc_setupscreen() to set the legacy-coding value the same
for both narrow/wide models. It had been set only for wide model,
but is needed to make unctrl() work with locale in the narrow model.
+ 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 (reported by Andrey A
Chernov).
+ 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 threading in test/worm.c (wrap refresh calls, and KEY_RESIZE
handling). Now it hangs in napms(), no matter whether nanosleep()
or poll() or select() are used on Linux.
+ remove recursive-mutex definitions, finish threading demo for worm.c
+ remove a redundant adjustment of lines in resizeterm.c's
adjust_window() which caused occasional misadjustment of stdscr when
softkeys were used.
+ several improvements to terminfo entries based on xterm #230 -TD
+ modify MKlib_gen.sh to handle keyname/key_name prototypes, so the
"link_test" builds properly.
+ fix for toe command-line options -u/-U to ensure filename is given.
+ fix allocation-size for command-line parsing in infocmp from 20070728
(report by Miroslav Lichvar)
+ improve resizeterm() by moving ripped-off lines, and repainting the
soft-keys (report by Katarina Machalkova)
+ add clarification in wclear's manpage noting that the screen will be
cleared even if a subwindow is cleared (prompted by Christer Enfors
question).
+ change test/ncurses.c soft-key tests to work with KEY_RESIZE.
+ add note about configure options needed for Berkeley database to the
INSTALL file.
+ improve checks for version of Berkeley database libraries.
+ amend fix for rpath to not modify LDFLAGS if the platform has no
applicable transformation (report by Christian Ebert, cf: 20071124).
+ continue implementing support for threading demo by adding mutex
for use_window().
+ add mrxvt terminfo entry, add/fix xterm building blocks for modified
cursor keys -TD
+ compile with FreeBSD "contemporary" TTY interface (patch by
Rong-En Fan).
+ modify makefile rules to allow clear, tput and tset to be built
without libtic. The other programs (infocmp, tic and toe) rely on
that library.
+ add/modify null-pointer checks in several functions for SP and/or
the WINDOW* parameter (report by Thorben Krueger).
+ fixes for field_buffer() in formw library (see Redhat Bugzilla
#310071, patches by Miroslav Lichvar).
+ improve performance of NCURSES_CHAR_EQ code (patch by Miroslav
Lichvar).
+ update/improve mlterm and rxvt terminfo entries, e.g., for
the modified cursor- and keypad-keys -TD
+ add new functions to lib_trace.c to setup mutex's for the _tracef()
calls within the ncurses library.
+ for the reentrant model, move _nc_tputs_trace and _nc_outchars into
the SCREEN.
+ start modifying test/worm.c to provide threading demo (incomplete).
+ separated ifdef's for some BSD-related symbols in tset.c, to make
it compile on LynxOS (report by Greg Gemmer).
+ add use_window() and use_screen() functions, to develop into support
for threaded library (incomplete).
+ fix typos in man/curs_opaque.3x which kept the install script from
creating symbolic links to two aliases created in 20070818 (report by
Rong-En Fan).
+ remove a spurious newline from output of html.m4, which caused links
for Ada95 html to be incorrect for the files generated using m4.
+ start investigating mutex's for SCREEN manipulation (incomplete).
+ minor cleanup of codes.c/names.c for --enable-const
+ expand/revise "Routine and Argument Names" section of ncurses manpage
to address report by David Givens in newsgroup discussion.
+ fix interaction between --without-progs/--with-termcap configure
options (report by Michail Vidiassov).
+ fix typo in "--disable-relink" option (report by Michail Vidiassov).
+ add 9term terminal description (request by Juhapekka Tolvanen) -TD
+ modify comp_hash.c's string output to avoid misinterpreting a null
"\0" followed by a digit.
+ modify MKnames.awk and MKcodes.awk to support big-strings.
This only applies to the cases (broken linker, reentrant) where
the corresponding arrays are accessed via wrapper functions.
+ split MKnames.awk into two scripts, eliminating the shell redirection
which complicated the make process and also the bogus timestamp file
which was introduced to fix "make -j".
+ add test/test_opaque.c, test/test_arrays.c
+ add wgetscrreg() and wgetparent() for applications that may need it
when NCURSES_OPAQUE is defined (prompted by Bryan Christ).
+ amend treatment of infocmp "-r" option to retain the 1023-byte limit
unless "-T" is given (cf: 981017).
+ modify comp_captab.c generation to use big-strings.
+ make _nc_capalias_table and _nc_infoalias_table private accessed via
_nc_get_alias_table() since the tables are used only within the tic
library.
+ modify configure script to skip Intel compiler in CF_C_INLINE.
+ make _nc_info_hash_table and _nc_cap_hash_table private accessed via
_nc_get_hash_table() since the tables are used only within the tic
library.
+ make _nc_capalias_table and _nc_infoalias_table private, accessed via
_nc_get_alias_table() since they are used only by parse_entry.c
+ make _nc_key_names private since it is used only by lib_keyname.c
+ add --disable-big-strings configure option to control whether
unctrl.c is generated using the big-string optimization - which may
use strings longer than supported by a given compiler.
+ reduce relocation tables for tic, infocmp by changing type of
internal hash tables to short, and make those private symbols.
+ eliminate large fixed arrays from progs/infocmp.c
+ change winnstr() to stop at the end of the line (cf: 970315).
+ add test/test_get_wstr.c
+ add test/test_getstr.c
+ add test/test_inwstr.c
+ add test/test_instr.c