ncurses 5.9 - patch 20110903

+ propagate error-returns from wresize, i.e., the internal
  increase_size and decrease_size functions through resize_term (report
  by Tim van der Molen, cf:  20020713).
+ fix typo in tset manpage (patch by Sven Joachim).
This commit is contained in:
Thomas E. Dickey 2011-09-04 00:30:36 +00:00
parent bd257b9d8d
commit fc108369da
4 changed files with 58 additions and 38 deletions

8
NEWS
View File

@ -25,7 +25,7 @@
-- sale, use or other dealings in this Software without prior written -- -- sale, use or other dealings in this Software without prior written --
-- authorization. -- -- authorization. --
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
-- $Id: NEWS,v 1.1771 2011/08/20 21:36:44 tom Exp $ -- $Id: NEWS,v 1.1773 2011/09/03 18:39:32 tom Exp $
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started This is a log of changes that ncurses has gone through since Zeyd started
@ -45,6 +45,12 @@ See the AUTHORS file for the corresponding full names.
Changes through 1.9.9e did not credit all contributions; Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information. it is not possible to add this information.
20110903
+ propagate error-returns from wresize, i.e., the internal
increase_size and decrease_size functions through resize_term (report
by Tim van der Molen, cf: 20020713).
+ fix typo in tset manpage (patch by Sven Joachim).
20110820 20110820
+ add a check to ensure that termcap files which might have "^?" do + add a check to ensure that termcap files which might have "^?" do
not use the terminfo interpretation as "\177". not use the terminfo interpretation as "\177".

View File

@ -25,7 +25,7 @@
# use or other dealings in this Software without prior written # # use or other dealings in this Software without prior written #
# authorization. # # authorization. #
############################################################################## ##############################################################################
# $Id: dist.mk,v 1.831 2011/08/20 15:29:02 tom Exp $ # $Id: dist.mk,v 1.832 2011/09/03 13:53:10 tom Exp $
# Makefile for creating ncurses distributions. # Makefile for creating ncurses distributions.
# #
# This only needs to be used directly as a makefile by developers, but # This only needs to be used directly as a makefile by developers, but
@ -37,7 +37,7 @@ SHELL = /bin/sh
# These define the major/minor/patch versions of ncurses. # These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 5 NCURSES_MAJOR = 5
NCURSES_MINOR = 9 NCURSES_MINOR = 9
NCURSES_PATCH = 20110820 NCURSES_PATCH = 20110903
# We don't append the patch to the version, since this only applies to releases # We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)

View File

@ -1,5 +1,5 @@
.\"*************************************************************************** .\"***************************************************************************
.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * .\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
.\" * .\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a * .\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" copy of this software and associated documentation files (the * .\" copy of this software and associated documentation files (the *
@ -26,7 +26,7 @@
.\" authorization. * .\" authorization. *
.\"*************************************************************************** .\"***************************************************************************
.\" .\"
.\" $Id: tset.1,v 1.25 2010/12/04 18:38:55 tom Exp $ .\" $Id: tset.1,v 1.26 2011/09/03 13:58:35 Sven.Joachim Exp $
.TH @TSET@ 1 "" .TH @TSET@ 1 ""
.SH NAME .SH NAME
\fBtset\fR, \fBreset\fR \- terminal initialization \fBtset\fR, \fBreset\fR \- terminal initialization
@ -89,6 +89,7 @@ The options are as follows:
.TP 5 .TP 5
.B \-c .B \-c
Set control characters and modes. Set control characters and modes.
.TP 5
.B \-e .B \-e
Set the erase character to \fIch\fR. Set the erase character to \fIch\fR.
.TP .TP

View File

@ -45,7 +45,7 @@
#define CUR SP_TERMTYPE #define CUR SP_TERMTYPE
#endif #endif
MODULE_ID("$Id: resizeterm.c,v 1.43 2011/01/10 01:34:49 tom Exp $") MODULE_ID("$Id: resizeterm.c,v 1.44 2011/09/03 18:29:11 tom Exp $")
/* /*
* If we're trying to be reentrant, do not want any local statics. * If we're trying to be reentrant, do not want any local statics.
@ -365,58 +365,71 @@ NCURSES_SP_NAME(resize_term) (NCURSES_SP_DCLx int ToLines, int ToCols)
} }
#endif #endif
if (ToLines > screen_lines(SP_PARM)) { if (ToLines > screen_lines(SP_PARM)) {
increase_size(NCURSES_SP_ARGx result = increase_size(NCURSES_SP_ARGx
myLines = ToLines, myCols, was_stolen EXTRA_ARGS); myLines = ToLines,
myCols,
was_stolen EXTRA_ARGS);
CurLines = myLines; CurLines = myLines;
CurCols = myCols; CurCols = myCols;
} }
if (ToCols > screen_columns(SP_PARM)) { if ((result == OK)
increase_size(NCURSES_SP_ARGx && (ToCols > screen_columns(SP_PARM))) {
myLines, myCols = ToCols, was_stolen EXTRA_ARGS); result = increase_size(NCURSES_SP_ARGx
myLines,
myCols = ToCols,
was_stolen EXTRA_ARGS);
CurLines = myLines; CurLines = myLines;
CurCols = myCols; CurCols = myCols;
} }
if (ToLines < myLines || if ((result == OK)
ToCols < myCols) { && (ToLines < myLines ||
decrease_size(NCURSES_SP_ARGx ToLines, ToCols, was_stolen EXTRA_ARGS); ToCols < myCols)) {
result = decrease_size(NCURSES_SP_ARGx
ToLines,
ToCols,
was_stolen EXTRA_ARGS);
} }
screen_lines(SP_PARM) = (NCURSES_SIZE_T) ToLines; if (result == OK) {
screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols; screen_lines(SP_PARM) = (NCURSES_SIZE_T) ToLines;
screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols;
#ifdef USE_TERM_DRIVER #ifdef USE_TERM_DRIVER
CallDriver_2(SP_PARM, setsize, ToLines, ToCols); CallDriver_2(SP_PARM, setsize, ToLines, ToCols);
#else #else
lines = (NCURSES_SIZE_T) ToLines; lines = (NCURSES_SIZE_T) ToLines;
columns = (NCURSES_SIZE_T) ToCols; columns = (NCURSES_SIZE_T) ToCols;
#endif #endif
SP_PARM->_lines_avail = (NCURSES_SIZE_T) (ToLines - was_stolen); SP_PARM->_lines_avail = (NCURSES_SIZE_T) (ToLines - was_stolen);
if (SP_PARM->oldhash) { if (SP_PARM->oldhash) {
FreeAndNull(SP_PARM->oldhash); FreeAndNull(SP_PARM->oldhash);
} }
if (SP_PARM->newhash) { if (SP_PARM->newhash) {
FreeAndNull(SP_PARM->newhash); FreeAndNull(SP_PARM->newhash);
} }
#ifdef TRACE #ifdef TRACE
if (USE_TRACEF(TRACE_UPDATE)) { if (USE_TRACEF(TRACE_UPDATE)) {
SET_LINES(ToLines - was_stolen); SET_LINES(ToLines - was_stolen);
SET_COLS(ToCols); SET_COLS(ToCols);
show_window_sizes("after"); show_window_sizes("after");
_nc_unlock_global(tracef); _nc_unlock_global(tracef);
} }
#endif #endif
}
} }
/* if (result == OK) {
* Always update LINES, to allow for call from lib_doupdate.c which /*
* needs to have the count adjusted by the stolen (ripped off) lines. * Always update LINES, to allow for call from lib_doupdate.c which
*/ * needs to have the count adjusted by the stolen (ripped off) lines.
SET_LINES(ToLines - was_stolen); */
SET_COLS(ToCols); SET_LINES(ToLines - was_stolen);
SET_COLS(ToCols);
}
_nc_nonsp_unlock_global(curses); _nc_nonsp_unlock_global(curses);