+ 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).
+ 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.
+ 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)
+ 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
+ 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 _nc_keypad() to make it switch temporarily as needed to the
screen which must be updated.
+ wrap cur_term variable to help make _nc_keymap() thread-safe, and
always set the screen's copy of this variable in set_curterm().
+ restore curs_set() state after endwin()/refresh() (report/patch
Miroslav Lichvar)
+ 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.
+ 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.
+ 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.
+ 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.
+ modify configure option --with-hashed-db to accept a parameter which
is the install-prefix of a given Berkeley Database (prompted by
pierre4d2 comments).
+ rewrite wrapper for wcrtomb(), making it work on Solaris. This is
used in the form library to determine the length of the buffer needed
by field_buffer (report by Alfred Fung).
+ remove unneeded window-parameter from C++ binding for wresize (report
by Chris Lee).
+ modify the support for filesystems which do not support mixed-case to
generate 2-character (hexadecimal) codes for the lower-level of the
filesystem terminfo database (request by Michail Vidiassov).
+ add configure option --enable-mixed-case, to allow overriding the
configure script's check if the filesystem supports mixed-case
filenames.
+ add wresize() to C++ binding (request by Chris Lee).
+ define NCURSES_EXT_FUNCS and NCURSES_EXT_COLORS in curses.h to make
it simpler to tell if the extended functions and/or colors are
declared.
+ 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 code to curses.priv.h ifdef'd with NCURSES_CHAR_EQ, which
changes the CharEq() macro to an inline function to allow comparing
cchar_t struct's without comparing gaps in a possibly unpacked
memory layout (report by Miroslav Lichvar).
+ 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).
+ 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.
+ restore a call to obtain screen-size in _nc_setupterm(), which
is used in tput and other non-screen applications via setupterm()
(Debian #433357, reported by Florent Bayle, Christian Ohm,
cf: 20070310).
+ add test/key_name.c
+ add stdscr cases to test/inchs.c and test_inch_wide.c
+ update test/configure
+ correct formatting of DEL (0x7f) in _nc_vischar().
+ null-terminate result of wunctrl().
+ add null-pointer check in key_name() (report by Andreas Krennmair,
cf: 20020901).
+ adapt mouse-handling code from menu library in form-library
(discussion with Clive Nicolson).
+ add a modification of test/dots.c, i.e., test/dots_mvcur.c to
illustrate how to use mvcur().
+ modify wide-character flavor of SetAttr() to preserve the
WidecExt() value stored in the .attr field, e.g., in case it
is overwritten by chgat (report by Aleksi Torhamo).
+ correct buffer-size for _nc_viswbuf2n() (report by Aleksi Torhamo).
+ build-fixes for Solaris 2.6 and 2.7 (patch by Peter O'Gorman).
+ 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() (prompted by LinuxBase #1604).
+ document some portability issues in man/curs_util.3x
+ add a shadow copy of TTY buffer to _nc_prescreen to fix applications
broken by moving that data into SCREEN (cf: 20061230).
+ add 'O' (wide-character panel test) in ncurses.c to demonstrate a
problem reported by Sadrul H Chowdhury with repainting parts of
a fullwidth cell.
+ modify slk_init() so that if there are preceding calls to
ripoffline(), those affect the available lines for soft-keys (adapted
from patch by Clive Nicolson).
+ document some portability issues in man/curs_getyx.3x
+ increase size of array in _nc_visbuf2n() to make "tic -v" work
properly in its similar_sgr() function (report/analysis by Peter
Santoro).
+ add --enable-reentrant configure option for ongoing changes to
implement a reentrant version of ncurses:
+ libraries are suffixed with "t"
+ wrap several global variables (curscr, newscr, stdscr, ttytype,
COLORS, COLOR_PAIRS, COLS, ESCDELAY, LINES and TABSIZE) as
functions returning values stored in SCREEN or cur_term.
+ move some initialization (LINES, COLS) from lib_setup.c,
i.e., setupterm() to _nc_setupscreen(), i.e., newterm().
+ regenerated html documentation.
+ add NCURSES_OPAQUE symbol to curses.h, will use to make structs
opaque in selected configurations.
+ move the chunk in lib_acs.c which resets acs capabilities when
running on a terminal whose locale interferes with those into
_nc_setupscreen(), so the libtinfo/libtinfow files can be made
identical (requested by Miroslav Lichvar).
+ do not use configure variable SHLIB_LIBS for building libraries
outside the ncurses directory, since that symbol is customized
only for that directory, and using it introduces an unneeded
dependency on libdl (requested by Miroslav Lichvar).
+ 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 (report by Jeff
Chua).
+ revised section "Using NCURSES under XTERM" in ncurses-intro.html
(prompted by newsgroup comment by Nick Guenther).
+ change MKunctrl.awk to reduce relocation table for unctrl.o
+ change MKkeyname.awk to reduce relocation table for keyname.o
(patch by Miroslav Lichvar).
+ modify configure check for libtool's version to trim blank lines
(report by sci-fi@hush.ai).
+ modify some modules to allow them to be reentrant if _REENTRANT is
defined: lib_baudrate.c, resizeterm.c (local data only)
+ eliminate static data from some modules: add_tries.c, hardscroll.c,
lib_ttyflags.c, lib_twait.c
+ improve manpage install to add aliases for the transformed program
names, e.g., from --program-prefix.
+ used linklint to verify links in the HTML documentation, made fixes
to manpages as needed.
+ fix a typo in curs_mouse.3x (report by William McBrine).
+ fix install-rule for ncurses5-config to make the bin-directory.