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 --
-- 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
@ -45,6 +45,12 @@ See the AUTHORS file for the corresponding full names.
Changes through 1.9.9e did not credit all contributions;
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
+ add a check to ensure that termcap files which might have "^?" do
not use the terminfo interpretation as "\177".

View File

@ -25,7 +25,7 @@
# use or other dealings in this Software without prior written #
# 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.
#
# 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.
NCURSES_MAJOR = 5
NCURSES_MINOR = 9
NCURSES_PATCH = 20110820
NCURSES_PATCH = 20110903
# We don't append the patch to the version, since this only applies to releases
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 *
.\" copy of this software and associated documentation files (the *
@ -26,7 +26,7 @@
.\" 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 ""
.SH NAME
\fBtset\fR, \fBreset\fR \- terminal initialization
@ -89,6 +89,7 @@ The options are as follows:
.TP 5
.B \-c
Set control characters and modes.
.TP 5
.B \-e
Set the erase character to \fIch\fR.
.TP

View File

@ -45,7 +45,7 @@
#define CUR SP_TERMTYPE
#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.
@ -365,58 +365,71 @@ NCURSES_SP_NAME(resize_term) (NCURSES_SP_DCLx int ToLines, int ToCols)
}
#endif
if (ToLines > screen_lines(SP_PARM)) {
increase_size(NCURSES_SP_ARGx
myLines = ToLines, myCols, was_stolen EXTRA_ARGS);
result = increase_size(NCURSES_SP_ARGx
myLines = ToLines,
myCols,
was_stolen EXTRA_ARGS);
CurLines = myLines;
CurCols = myCols;
}
if (ToCols > screen_columns(SP_PARM)) {
increase_size(NCURSES_SP_ARGx
myLines, myCols = ToCols, was_stolen EXTRA_ARGS);
if ((result == OK)
&& (ToCols > screen_columns(SP_PARM))) {
result = increase_size(NCURSES_SP_ARGx
myLines,
myCols = ToCols,
was_stolen EXTRA_ARGS);
CurLines = myLines;
CurCols = myCols;
}
if (ToLines < myLines ||
ToCols < myCols) {
decrease_size(NCURSES_SP_ARGx ToLines, ToCols, was_stolen EXTRA_ARGS);
if ((result == OK)
&& (ToLines < myLines ||
ToCols < myCols)) {
result = decrease_size(NCURSES_SP_ARGx
ToLines,
ToCols,
was_stolen EXTRA_ARGS);
}
screen_lines(SP_PARM) = (NCURSES_SIZE_T) ToLines;
screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols;
if (result == OK) {
screen_lines(SP_PARM) = (NCURSES_SIZE_T) ToLines;
screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols;
#ifdef USE_TERM_DRIVER
CallDriver_2(SP_PARM, setsize, ToLines, ToCols);
CallDriver_2(SP_PARM, setsize, ToLines, ToCols);
#else
lines = (NCURSES_SIZE_T) ToLines;
columns = (NCURSES_SIZE_T) ToCols;
lines = (NCURSES_SIZE_T) ToLines;
columns = (NCURSES_SIZE_T) ToCols;
#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) {
FreeAndNull(SP_PARM->oldhash);
}
if (SP_PARM->newhash) {
FreeAndNull(SP_PARM->newhash);
}
if (SP_PARM->oldhash) {
FreeAndNull(SP_PARM->oldhash);
}
if (SP_PARM->newhash) {
FreeAndNull(SP_PARM->newhash);
}
#ifdef TRACE
if (USE_TRACEF(TRACE_UPDATE)) {
SET_LINES(ToLines - was_stolen);
SET_COLS(ToCols);
show_window_sizes("after");
_nc_unlock_global(tracef);
}
if (USE_TRACEF(TRACE_UPDATE)) {
SET_LINES(ToLines - was_stolen);
SET_COLS(ToCols);
show_window_sizes("after");
_nc_unlock_global(tracef);
}
#endif
}
}
/*
* 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);
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.
*/
SET_LINES(ToLines - was_stolen);
SET_COLS(ToCols);
}
_nc_nonsp_unlock_global(curses);