1844 lines
53 KiB
Diff
1844 lines
53 KiB
Diff
# ncurses 6.1 - patch 20190824 - Thomas E. Dickey
|
|
#
|
|
# ------------------------------------------------------------------------------
|
|
#
|
|
# Ncurses 6.1 is at
|
|
# ftp.gnu.org:/pub/gnu
|
|
#
|
|
# Patches for ncurses 6.1 can be found at
|
|
# ftp://ftp.invisible-island.net/ncurses/6.1
|
|
# http://invisible-mirror.net/archives/ncurses/6.1
|
|
#
|
|
# ------------------------------------------------------------------------------
|
|
# ftp://ftp.invisible-island.net/ncurses/6.1/ncurses-6.1-20190824.patch.gz
|
|
# patch by Thomas E. Dickey <dickey@invisible-island.net>
|
|
# created Sun Aug 25 01:15:21 UTC 2019
|
|
# ------------------------------------------------------------------------------
|
|
# NEWS | 5 +-
|
|
# VERSION | 2
|
|
# dist.mk | 4 -
|
|
# package/debian-mingw/changelog | 4 -
|
|
# package/debian-mingw64/changelog | 4 -
|
|
# package/debian/changelog | 4 -
|
|
# package/mingw-ncurses.nsi | 4 -
|
|
# package/mingw-ncurses.spec | 2
|
|
# package/ncurses.spec | 2
|
|
# package/ncursest.spec | 2
|
|
# test/demo_menus.c | 5 +-
|
|
# test/demo_panels.c | 35 +++++++++------
|
|
# test/demo_termcap.c | 12 ++---
|
|
# test/demo_terminfo.c | 12 ++---
|
|
# test/dots.c | 16 +++---
|
|
# test/dots_curses.c | 16 +++---
|
|
# test/dots_mvcur.c | 16 +++---
|
|
# test/dots_termcap.c | 20 ++++----
|
|
# test/dots_xcurses.c | 14 ++----
|
|
# test/echochar.c | 14 +++---
|
|
# test/extended_color.c | 6 +-
|
|
# test/filter.c | 6 +-
|
|
# test/foldkeys.c | 14 +++---
|
|
# test/gdc.c | 10 ++--
|
|
# test/inch_wide.c | 7 +--
|
|
# test/inchs.c | 7 +--
|
|
# test/insdelln.c | 6 +-
|
|
# test/knight.c | 28 +++++-------
|
|
# test/list_keys.c | 14 +++---
|
|
# test/ncurses.c | 86 ++++++++++++++++++++-----------------
|
|
# test/newdemo.c | 14 +++---
|
|
# test/pair_content.c | 4 -
|
|
# test/picsmap.c | 35 +++++++++------
|
|
# test/railroad.c | 8 +--
|
|
# 34 files changed, 237 insertions(+), 201 deletions(-)
|
|
# ------------------------------------------------------------------------------
|
|
Index: NEWS
|
|
Prereq: 1.3364
|
|
--- ncurses-6.1-20190817+/NEWS 2019-08-17 21:47:27.000000000 +0000
|
|
+++ ncurses-6.1-20190824/NEWS 2019-08-24 23:16:29.000000000 +0000
|
|
@@ -25,7 +25,7 @@
|
|
-- sale, use or other dealings in this Software without prior written --
|
|
-- authorization. --
|
|
-------------------------------------------------------------------------------
|
|
--- $Id: NEWS,v 1.3364 2019/08/17 21:47:27 tom Exp $
|
|
+-- $Id: NEWS,v 1.3366 2019/08/24 23:16:29 tom Exp $
|
|
-------------------------------------------------------------------------------
|
|
|
|
This is a log of changes that ncurses has gone through since Zeyd started
|
|
@@ -45,6 +45,9 @@
|
|
Changes through 1.9.9e did not credit all contributions;
|
|
it is not possible to add this information.
|
|
|
|
+20190824
|
|
+ + fix some cppcheck warnings, mostly style, in ncurses test-programs.
|
|
+
|
|
20190817
|
|
+ amend 20181208 changes for wbkgd() and wbkgrnd(), fixing a few
|
|
details where it still differed from SVr4.
|
|
Index: VERSION
|
|
--- ncurses-6.1-20190817+/VERSION 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/VERSION 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -1 +1 @@
|
|
-5:0:10 6.1 20190817
|
|
+5:0:10 6.1 20190824
|
|
Index: dist.mk
|
|
Prereq: 1.1301
|
|
--- ncurses-6.1-20190817+/dist.mk 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/dist.mk 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -25,7 +25,7 @@
|
|
# use or other dealings in this Software without prior written #
|
|
# authorization. #
|
|
##############################################################################
|
|
-# $Id: dist.mk,v 1.1301 2019/08/17 13:26:39 tom Exp $
|
|
+# $Id: dist.mk,v 1.1302 2019/08/24 13:12:23 tom Exp $
|
|
# Makefile for creating ncurses distributions.
|
|
#
|
|
# This only needs to be used directly as a makefile by developers, but
|
|
@@ -37,7 +37,7 @@
|
|
# These define the major/minor/patch versions of ncurses.
|
|
NCURSES_MAJOR = 6
|
|
NCURSES_MINOR = 1
|
|
-NCURSES_PATCH = 20190817
|
|
+NCURSES_PATCH = 20190824
|
|
|
|
# We don't append the patch to the version, since this only applies to releases
|
|
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
|
|
Index: package/debian-mingw/changelog
|
|
--- ncurses-6.1-20190817+/package/debian-mingw/changelog 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/package/debian-mingw/changelog 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -1,8 +1,8 @@
|
|
-ncurses6 (6.1+20190817) unstable; urgency=low
|
|
+ncurses6 (6.1+20190824) unstable; urgency=low
|
|
|
|
* latest weekly patch
|
|
|
|
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 17 Aug 2019 09:26:39 -0400
|
|
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Aug 2019 09:12:23 -0400
|
|
|
|
ncurses6 (5.9-20131005) unstable; urgency=low
|
|
|
|
Index: package/debian-mingw64/changelog
|
|
--- ncurses-6.1-20190817+/package/debian-mingw64/changelog 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/package/debian-mingw64/changelog 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -1,8 +1,8 @@
|
|
-ncurses6 (6.1+20190817) unstable; urgency=low
|
|
+ncurses6 (6.1+20190824) unstable; urgency=low
|
|
|
|
* latest weekly patch
|
|
|
|
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 17 Aug 2019 09:26:39 -0400
|
|
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Aug 2019 09:12:23 -0400
|
|
|
|
ncurses6 (5.9-20131005) unstable; urgency=low
|
|
|
|
Index: package/debian/changelog
|
|
--- ncurses-6.1-20190817+/package/debian/changelog 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/package/debian/changelog 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -1,8 +1,8 @@
|
|
-ncurses6 (6.1+20190817) unstable; urgency=low
|
|
+ncurses6 (6.1+20190824) unstable; urgency=low
|
|
|
|
* latest weekly patch
|
|
|
|
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 17 Aug 2019 09:26:39 -0400
|
|
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Aug 2019 09:12:23 -0400
|
|
|
|
ncurses6 (5.9-20120608) unstable; urgency=low
|
|
|
|
Index: package/mingw-ncurses.nsi
|
|
Prereq: 1.347
|
|
--- ncurses-6.1-20190817+/package/mingw-ncurses.nsi 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/package/mingw-ncurses.nsi 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -1,4 +1,4 @@
|
|
-; $Id: mingw-ncurses.nsi,v 1.347 2019/08/17 13:26:39 tom Exp $
|
|
+; $Id: mingw-ncurses.nsi,v 1.348 2019/08/24 13:12:23 tom Exp $
|
|
|
|
; TODO add examples
|
|
; TODO bump ABI to 6
|
|
@@ -10,7 +10,7 @@
|
|
!define VERSION_MAJOR "6"
|
|
!define VERSION_MINOR "1"
|
|
!define VERSION_YYYY "2019"
|
|
-!define VERSION_MMDD "0817"
|
|
+!define VERSION_MMDD "0824"
|
|
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
|
|
|
|
!define MY_ABI "5"
|
|
Index: package/mingw-ncurses.spec
|
|
--- ncurses-6.1-20190817+/package/mingw-ncurses.spec 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/package/mingw-ncurses.spec 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -3,7 +3,7 @@
|
|
Summary: shared libraries for terminal handling
|
|
Name: mingw32-ncurses6
|
|
Version: 6.1
|
|
-Release: 20190817
|
|
+Release: 20190824
|
|
License: X11
|
|
Group: Development/Libraries
|
|
Source: ncurses-%{version}-%{release}.tgz
|
|
Index: package/ncurses.spec
|
|
--- ncurses-6.1-20190817+/package/ncurses.spec 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/package/ncurses.spec 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -1,7 +1,7 @@
|
|
Summary: shared libraries for terminal handling
|
|
Name: ncurses6
|
|
Version: 6.1
|
|
-Release: 20190817
|
|
+Release: 20190824
|
|
License: X11
|
|
Group: Development/Libraries
|
|
Source: ncurses-%{version}-%{release}.tgz
|
|
Index: package/ncursest.spec
|
|
--- ncurses-6.1-20190817+/package/ncursest.spec 2019-08-17 13:26:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/package/ncursest.spec 2019-08-24 13:12:23.000000000 +0000
|
|
@@ -1,7 +1,7 @@
|
|
Summary: Curses library with POSIX thread support.
|
|
Name: ncursest6
|
|
Version: 6.1
|
|
-Release: 20190817
|
|
+Release: 20190824
|
|
License: X11
|
|
Group: Development/Libraries
|
|
Source: ncurses-%{version}-%{release}.tgz
|
|
Index: test/demo_menus.c
|
|
Prereq: 1.68
|
|
--- ncurses-6.1-20190817+/test/demo_menus.c 2019-08-17 21:45:32.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/demo_menus.c 2019-08-24 21:41:50.000000000 +0000
|
|
@@ -26,7 +26,7 @@
|
|
* authorization. *
|
|
****************************************************************************/
|
|
/*
|
|
- * $Id: demo_menus.c,v 1.68 2019/08/17 21:45:32 tom Exp $
|
|
+ * $Id: demo_menus.c,v 1.69 2019/08/24 21:41:50 tom Exp $
|
|
*
|
|
* Demonstrate a variety of functions from the menu library.
|
|
* Thomas Dickey - 2005/4/9
|
|
@@ -586,13 +586,14 @@
|
|
update_trace_menu(MENU * m)
|
|
{
|
|
ITEM **items;
|
|
- ITEM *i, **p;
|
|
+ ITEM *i;
|
|
bool changed = FALSE;
|
|
|
|
items = menu_items(m);
|
|
i = current_item(m);
|
|
if (i == items[0]) {
|
|
if (item_value(i)) {
|
|
+ ITEM **p;
|
|
for (p = items + 1; *p != 0; p++)
|
|
if (item_value(*p)) {
|
|
set_item_value(*p, FALSE);
|
|
Index: test/demo_panels.c
|
|
Prereq: 1.42
|
|
--- ncurses-6.1-20190817+/test/demo_panels.c 2018-05-20 19:21:18.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/demo_panels.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2007-2017,2018 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2007-2018,2019 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: demo_panels.c,v 1.42 2018/05/20 19:21:18 tom Exp $
|
|
+ * $Id: demo_panels.c,v 1.43 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* Demonstrate a variety of functions from the panel library.
|
|
*/
|
|
@@ -250,7 +250,6 @@
|
|
static void
|
|
my_create_panel(PANEL **pans, int which, FillPanel myFill)
|
|
{
|
|
- PANEL *pan = 0;
|
|
int code;
|
|
short pair = (short) which;
|
|
short fg = (short) ((pair == COLOR_BLUE) ? COLOR_WHITE : COLOR_BLACK);
|
|
@@ -281,7 +280,10 @@
|
|
if (code > 0) {
|
|
int tly = MIN(y0, y1);
|
|
int tlx = MIN(x0, x1);
|
|
- pan = mkpanel(pair, ABS(y1 - y0) + 1, ABS(x1 - x0) + 1, tly, tlx);
|
|
+ PANEL *pan = mkpanel(pair,
|
|
+ ABS(y1 - y0) + 1,
|
|
+ ABS(x1 - x0) + 1,
|
|
+ tly, tlx);
|
|
/* finish */
|
|
myFill(pan);
|
|
pans[which] = pan;
|
|
@@ -465,7 +467,7 @@
|
|
}
|
|
|
|
static void
|
|
-show_panels(PANEL *px[MAX_PANELS + 1])
|
|
+show_help(WINDOW *win)
|
|
{
|
|
static const char *help[] =
|
|
{
|
|
@@ -481,7 +483,17 @@
|
|
" s - show the panel",
|
|
" t - put the panel on the top of the stack"
|
|
};
|
|
+ int j;
|
|
+
|
|
+ for (j = 0; j < (int) SIZEOF(help); ++j) {
|
|
+ if (wprintw(win, "%s\n", help[j]) == ERR)
|
|
+ break;
|
|
+ }
|
|
+}
|
|
|
|
+static void
|
|
+show_panels(PANEL *px[MAX_PANELS + 1])
|
|
+{
|
|
struct {
|
|
bool valid;
|
|
bool hidden;
|
|
@@ -490,7 +502,6 @@
|
|
} table[MAX_PANELS + 1];
|
|
|
|
WINDOW *win;
|
|
- PANEL *pan;
|
|
int j;
|
|
|
|
memset(table, 0, sizeof(table));
|
|
@@ -504,6 +515,8 @@
|
|
}
|
|
|
|
if ((win = newwin(LINES - 1, COLS, 0, 0)) != 0) {
|
|
+ PANEL *pan;
|
|
+
|
|
keypad(win, TRUE);
|
|
if ((pan = new_panel(win)) != 0) {
|
|
werase(win);
|
|
@@ -527,10 +540,7 @@
|
|
waddch(win, '\n');
|
|
}
|
|
}
|
|
- for (j = 0; j < (int) SIZEOF(help); ++j) {
|
|
- if (wprintw(win, "%s\n", help[j]) == ERR)
|
|
- break;
|
|
- }
|
|
+ show_help(win);
|
|
wgetch(win);
|
|
del_panel(pan);
|
|
pflush();
|
|
@@ -626,7 +636,6 @@
|
|
{
|
|
int length = 0;
|
|
int y0, x0;
|
|
- int c0, ch;
|
|
WINDOW *win;
|
|
|
|
getyx(stdscr, y0, x0);
|
|
@@ -645,9 +654,9 @@
|
|
}
|
|
(void) wgetch(win);
|
|
} else {
|
|
- c0 = 0;
|
|
+ int c0 = 0;
|
|
for (;;) {
|
|
- ch = wgetch(win);
|
|
+ int ch = wgetch(win);
|
|
if (ch == ERR || ch == QUIT || ch == ESCAPE) {
|
|
buffer[0] = '\0';
|
|
break;
|
|
Index: test/demo_termcap.c
|
|
Prereq: 1.57
|
|
--- ncurses-6.1-20190817+/test/demo_termcap.c 2019-01-21 22:50:46.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/demo_termcap.c 2019-08-24 21:47:19.000000000 +0000
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey
|
|
*
|
|
- * $Id: demo_termcap.c,v 1.57 2019/01/21 22:50:46 tom Exp $
|
|
+ * $Id: demo_termcap.c,v 1.58 2019/08/24 21:47:19 tom Exp $
|
|
*
|
|
* A simple demo of the termcap interface.
|
|
*/
|
|
@@ -159,7 +159,8 @@
|
|
db_item++;
|
|
}
|
|
}
|
|
- printf("** %s\n", result);
|
|
+ if (result != 0)
|
|
+ printf("** %s\n", result);
|
|
return result;
|
|
}
|
|
|
|
@@ -327,8 +328,6 @@
|
|
static void
|
|
demo_termcap(NCURSES_CONST char *name)
|
|
{
|
|
- unsigned n;
|
|
- NCURSES_CONST char *cap;
|
|
char buffer[1024];
|
|
|
|
if (db_list) {
|
|
@@ -337,6 +336,8 @@
|
|
if (!q_opt)
|
|
printf("Terminal type \"%s\"\n", name);
|
|
if (tgetent(buffer, name) >= 0) {
|
|
+ NCURSES_CONST char *cap;
|
|
+ unsigned n;
|
|
|
|
if (b_opt) {
|
|
for (n = 0;; ++n) {
|
|
@@ -698,7 +699,6 @@
|
|
size_t count;
|
|
size_t length = 1;
|
|
char **result = 0;
|
|
- char *blob = 0;
|
|
char *unused = 0;
|
|
|
|
for (pass = 0; pass < 2; ++pass) {
|
|
@@ -713,7 +713,7 @@
|
|
}
|
|
}
|
|
if (pass == 0) {
|
|
- blob = malloc(length);
|
|
+ char *blob = malloc(length);
|
|
result = typeCalloc(char *, count + 1);
|
|
unused = blob;
|
|
if (blob == 0 || result == 0)
|
|
Index: test/demo_terminfo.c
|
|
Prereq: 1.48
|
|
--- ncurses-6.1-20190817+/test/demo_terminfo.c 2017-11-24 20:49:11.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/demo_terminfo.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2009-2016,2017 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2009-2017,2019 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 *
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey
|
|
*
|
|
- * $Id: demo_terminfo.c,v 1.48 2017/11/24 20:49:11 tom Exp $
|
|
+ * $Id: demo_terminfo.c,v 1.49 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* A simple demo of the terminfo interface.
|
|
*/
|
|
@@ -150,7 +150,8 @@
|
|
db_item++;
|
|
}
|
|
}
|
|
- printf("** %s\n", result);
|
|
+ if (result != 0)
|
|
+ printf("** %s\n", result);
|
|
return result;
|
|
}
|
|
|
|
@@ -362,7 +363,6 @@
|
|
}
|
|
#ifdef NCURSES_VERSION
|
|
if (x_opt && (my_blob == 0)) {
|
|
- int mod;
|
|
if (y_opt) {
|
|
#if NCURSES_XNAMES
|
|
TERMTYPE *term = (TERMTYPE *) cur_term;
|
|
@@ -389,6 +389,7 @@
|
|
"kLFT", "kNXT", "kPRV", "kRIT", "kUP",
|
|
};
|
|
for (n = 0; n < SIZEOF(xterm_keys); ++n) {
|
|
+ int mod;
|
|
for (mod = 0; mod < 8; ++mod) {
|
|
if (mod == 0) {
|
|
/* these happen to be standard - avoid duplicates */
|
|
@@ -728,7 +729,6 @@
|
|
size_t count;
|
|
size_t length = 1;
|
|
char **result = 0;
|
|
- char *blob = 0;
|
|
char *unused = 0;
|
|
|
|
for (pass = 0; pass < 2; ++pass) {
|
|
@@ -743,7 +743,7 @@
|
|
}
|
|
}
|
|
if (pass == 0) {
|
|
- blob = malloc(length);
|
|
+ char *blob = malloc(length);
|
|
result = typeCalloc(char *, count + 1);
|
|
unused = blob;
|
|
if (blob == 0 || result == 0)
|
|
Index: test/dots.c
|
|
Prereq: 1.34
|
|
--- ncurses-6.1-20190817+/test/dots.c 2019-01-21 14:20:18.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/dots.c 2019-08-24 21:49:50.000000000 +0000
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey <dickey@clark.net> 1999
|
|
*
|
|
- * $Id: dots.c,v 1.34 2019/01/21 14:20:18 tom Exp $
|
|
+ * $Id: dots.c,v 1.35 2019/08/24 21:49:50 tom Exp $
|
|
*
|
|
* A simple demo of the terminfo interface.
|
|
*/
|
|
@@ -136,7 +136,7 @@
|
|
main(int argc,
|
|
char *argv[])
|
|
{
|
|
- int x, y, z, p;
|
|
+ int ch;
|
|
double r;
|
|
double c;
|
|
int my_colors;
|
|
@@ -146,8 +146,8 @@
|
|
size_t need;
|
|
char *my_env;
|
|
|
|
- while ((x = getopt(argc, argv, "T:efm:s:")) != -1) {
|
|
- switch (x) {
|
|
+ while ((ch = getopt(argc, argv, "T:efm:s:")) != -1) {
|
|
+ switch (ch) {
|
|
case 'T':
|
|
need = 6 + strlen(optarg);
|
|
my_env = malloc(need);
|
|
@@ -195,13 +195,13 @@
|
|
started = time((time_t *) 0);
|
|
|
|
while (!interrupted) {
|
|
- x = (int) (c * ranf()) + m_option;
|
|
- y = (int) (r * ranf()) + m_option;
|
|
- p = (ranf() > 0.9) ? '*' : ' ';
|
|
+ int x = (int) (c * ranf()) + m_option;
|
|
+ int y = (int) (r * ranf()) + m_option;
|
|
+ int p = (ranf() > 0.9) ? '*' : ' ';
|
|
|
|
tputs(tparm3(cursor_address, y, x), 1, outc);
|
|
if (my_colors > 0) {
|
|
- z = (int) (ranf() * my_colors);
|
|
+ int z = (int) (ranf() * my_colors);
|
|
if (ranf() > 0.01) {
|
|
tputs(tparm2(set_a_foreground, z), 1, outc);
|
|
} else {
|
|
Index: test/dots_curses.c
|
|
Prereq: 1.14
|
|
--- ncurses-6.1-20190817+/test/dots_curses.c 2019-01-21 14:20:18.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/dots_curses.c 2019-08-24 21:50:35.000000000 +0000
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey
|
|
*
|
|
- * $Id: dots_curses.c,v 1.14 2019/01/21 14:20:18 tom Exp $
|
|
+ * $Id: dots_curses.c,v 1.15 2019/08/24 21:50:35 tom Exp $
|
|
*
|
|
* A simple demo of the curses interface used for comparison with termcap.
|
|
*/
|
|
@@ -113,7 +113,7 @@
|
|
int
|
|
main(int argc, char *argv[])
|
|
{
|
|
- int x, y, z, p;
|
|
+ int ch;
|
|
int fg, bg;
|
|
double r;
|
|
double c;
|
|
@@ -125,8 +125,8 @@
|
|
size_t need;
|
|
char *my_env;
|
|
|
|
- while ((x = getopt(argc, argv, "T:dem:s:")) != -1) {
|
|
- switch (x) {
|
|
+ while ((ch = getopt(argc, argv, "T:dem:s:")) != -1) {
|
|
+ switch (ch) {
|
|
case 'T':
|
|
need = 6 + strlen(optarg);
|
|
my_env = malloc(need);
|
|
@@ -185,13 +185,13 @@
|
|
fg = COLOR_WHITE;
|
|
bg = COLOR_BLACK;
|
|
while (!interrupted) {
|
|
- x = (int) (c * ranf()) + m_option;
|
|
- y = (int) (r * ranf()) + m_option;
|
|
- p = (ranf() > 0.9) ? '*' : ' ';
|
|
+ int x = (int) (c * ranf()) + m_option;
|
|
+ int y = (int) (r * ranf()) + m_option;
|
|
+ int p = (ranf() > 0.9) ? '*' : ' ';
|
|
|
|
move(y, x);
|
|
if (has_colors()) {
|
|
- z = (int) (ranf() * COLORS);
|
|
+ int z = (int) (ranf() * COLORS);
|
|
if (ranf() > 0.01) {
|
|
set_colors(fg = z, bg);
|
|
attron(COLOR_PAIR(mypair(fg, bg)));
|
|
Index: test/dots_mvcur.c
|
|
Prereq: 1.20
|
|
--- ncurses-6.1-20190817+/test/dots_mvcur.c 2019-01-21 14:20:18.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/dots_mvcur.c 2019-08-24 22:19:28.000000000 +0000
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey - 2007
|
|
*
|
|
- * $Id: dots_mvcur.c,v 1.20 2019/01/21 14:20:18 tom Exp $
|
|
+ * $Id: dots_mvcur.c,v 1.21 2019/08/24 22:19:28 tom Exp $
|
|
*
|
|
* A simple demo of the terminfo interface, and mvcur.
|
|
*/
|
|
@@ -138,7 +138,7 @@
|
|
char *argv[]GCC_UNUSED)
|
|
{
|
|
int x0 = 1, y0 = 1;
|
|
- int x, y, z, p;
|
|
+ int ch;
|
|
double r;
|
|
double c;
|
|
SCREEN *sp;
|
|
@@ -149,8 +149,8 @@
|
|
size_t need;
|
|
char *my_env;
|
|
|
|
- while ((x = getopt(argc, argv, "T:efm:s:")) != -1) {
|
|
- switch (x) {
|
|
+ while ((ch = getopt(argc, argv, "T:efm:s:")) != -1) {
|
|
+ switch (ch) {
|
|
case 'T':
|
|
need = 6 + strlen(optarg);
|
|
my_env = malloc(need);
|
|
@@ -205,9 +205,9 @@
|
|
started = time((time_t *) 0);
|
|
|
|
while (!interrupted) {
|
|
- x = (int) (c * ranf()) + m_option;
|
|
- y = (int) (r * ranf()) + m_option;
|
|
- p = (ranf() > 0.9) ? '*' : ' ';
|
|
+ int x = (int) (c * ranf()) + m_option;
|
|
+ int y = (int) (r * ranf()) + m_option;
|
|
+ int p = (ranf() > 0.9) ? '*' : ' ';
|
|
|
|
if (mvcur(y0, x0, y, x) != ERR) {
|
|
x0 = x;
|
|
@@ -215,7 +215,7 @@
|
|
}
|
|
|
|
if (my_colors > 0) {
|
|
- z = (int) (ranf() * my_colors);
|
|
+ int z = (int) (ranf() * my_colors);
|
|
if (ranf() > 0.01) {
|
|
tputs(tparm2(set_a_foreground, z), 1, outc);
|
|
} else {
|
|
Index: test/dots_termcap.c
|
|
Prereq: 1.18
|
|
--- ncurses-6.1-20190817+/test/dots_termcap.c 2019-01-21 14:20:18.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/dots_termcap.c 2019-08-24 22:25:55.000000000 +0000
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey
|
|
*
|
|
- * $Id: dots_termcap.c,v 1.18 2019/01/21 14:20:18 tom Exp $
|
|
+ * $Id: dots_termcap.c,v 1.19 2019/08/24 22:25:55 tom Exp $
|
|
*
|
|
* A simple demo of the termcap interface.
|
|
*/
|
|
@@ -201,7 +201,7 @@
|
|
int
|
|
main(int argc, char *argv[])
|
|
{
|
|
- int x, y, z, p;
|
|
+ int ch;
|
|
int num_colors;
|
|
int num_lines;
|
|
int num_columns;
|
|
@@ -216,8 +216,8 @@
|
|
size_t need;
|
|
char *my_env;
|
|
|
|
- while ((x = getopt(argc, argv, "T:em:s:")) != -1) {
|
|
- switch (x) {
|
|
+ while ((ch = getopt(argc, argv, "T:em:s:")) != -1) {
|
|
+ switch (ch) {
|
|
case 'T':
|
|
need = 6 + strlen(optarg);
|
|
my_env = malloc(need);
|
|
@@ -246,8 +246,8 @@
|
|
|
|
srand((unsigned) time(0));
|
|
|
|
- InitAndCatch(z = tgetent(buffer, name), onsig);
|
|
- if (z < 0) {
|
|
+ InitAndCatch(ch = tgetent(buffer, name), onsig);
|
|
+ if (ch < 0) {
|
|
fprintf(stderr, "terminal description not found\n");
|
|
ExitProgram(EXIT_FAILURE);
|
|
} else {
|
|
@@ -278,13 +278,13 @@
|
|
started = time((time_t *) 0);
|
|
|
|
while (!interrupted) {
|
|
- x = (int) (c * ranf()) + m_option;
|
|
- y = (int) (r * ranf()) + m_option;
|
|
- p = (ranf() > 0.9) ? '*' : ' ';
|
|
+ int x = (int) (c * ranf()) + m_option;
|
|
+ int y = (int) (r * ranf()) + m_option;
|
|
+ int p = (ranf() > 0.9) ? '*' : ' ';
|
|
|
|
tputs(tgoto(t_cm, x, y), 1, outc);
|
|
if (num_colors > 0) {
|
|
- z = (int) (ranf() * num_colors);
|
|
+ int z = (int) (ranf() * num_colors);
|
|
if (ranf() > 0.01) {
|
|
tputs(tgoto(t_AF, 0, z), 1, outc);
|
|
} else {
|
|
Index: test/dots_xcurses.c
|
|
Prereq: 1.17
|
|
--- ncurses-6.1-20190817+/test/dots_xcurses.c 2019-01-21 14:20:18.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/dots_xcurses.c 2019-08-24 22:31:43.000000000 +0000
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey
|
|
*
|
|
- * $Id: dots_xcurses.c,v 1.17 2019/01/21 14:20:18 tom Exp $
|
|
+ * $Id: dots_xcurses.c,v 1.18 2019/08/24 22:31:43 tom Exp $
|
|
*
|
|
* A simple demo of the wide-curses interface used for comparison with termcap.
|
|
*/
|
|
@@ -139,10 +139,8 @@
|
|
int
|
|
main(int argc, char *argv[])
|
|
{
|
|
- int x, y, z, p;
|
|
int fg, bg, ch;
|
|
wchar_t wch[2];
|
|
- int pair;
|
|
double r;
|
|
double c;
|
|
#if HAVE_USE_DEFAULT_COLORS
|
|
@@ -205,6 +203,7 @@
|
|
{
|
|
for (fg = 0; fg < COLORS; fg++) {
|
|
for (bg = 0; bg < COLORS; bg++) {
|
|
+ int pair;
|
|
if (interrupted) {
|
|
cleanup();
|
|
ExitProgram(EXIT_FAILURE);
|
|
@@ -224,16 +223,15 @@
|
|
|
|
fg = COLOR_WHITE;
|
|
bg = COLOR_BLACK;
|
|
- pair = 0;
|
|
wch[1] = 0;
|
|
while (!interrupted) {
|
|
- x = (int) (c * ranf()) + m_option;
|
|
- y = (int) (r * ranf()) + m_option;
|
|
- p = (ranf() > 0.9) ? '*' : ' ';
|
|
+ int x = (int) (c * ranf()) + m_option;
|
|
+ int y = (int) (r * ranf()) + m_option;
|
|
+ int p = (ranf() > 0.9) ? '*' : ' ';
|
|
|
|
move(y, x);
|
|
if (has_colors()) {
|
|
- z = (int) (ranf() * COLORS);
|
|
+ int z = (int) (ranf() * COLORS);
|
|
if (ranf() > 0.01) {
|
|
set_colors(fg = z, bg);
|
|
} else {
|
|
Index: test/echochar.c
|
|
Prereq: 1.18
|
|
--- ncurses-6.1-20190817+/test/echochar.c 2017-10-18 23:04:52.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/echochar.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2006-2014,2017 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2006-2017,2019 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: echochar.c,v 1.18 2017/10/18 23:04:52 tom Exp $
|
|
+ * $Id: echochar.c,v 1.19 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* Demonstrate the echochar function (compare to dots.c).
|
|
* Thomas Dickey - 2006/11/4
|
|
@@ -81,7 +81,7 @@
|
|
main(int argc GCC_UNUSED,
|
|
char *argv[]GCC_UNUSED)
|
|
{
|
|
- int ch, x, y, z, p;
|
|
+ int ch;
|
|
double r;
|
|
double c;
|
|
bool use_colors;
|
|
@@ -121,13 +121,13 @@
|
|
started = time((time_t *) 0);
|
|
|
|
while (!interrupted) {
|
|
- x = (int) (c * ranf()) + 2;
|
|
- y = (int) (r * ranf()) + 2;
|
|
- p = (ranf() > 0.9) ? '*' : ' ';
|
|
+ int x = (int) (c * ranf()) + 2;
|
|
+ int y = (int) (r * ranf()) + 2;
|
|
+ int p = (ranf() > 0.9) ? '*' : ' ';
|
|
|
|
move(y, x);
|
|
if (use_colors > 0) {
|
|
- z = (int) (ranf() * COLORS);
|
|
+ int z = (int) (ranf() * COLORS);
|
|
if (ranf() > 0.01) {
|
|
set_color(my_pairs, z, last_bg);
|
|
last_fg = z;
|
|
Index: test/extended_color.c
|
|
Prereq: 1.13
|
|
--- ncurses-6.1-20190817+/test/extended_color.c 2019-01-21 14:59:34.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/extended_color.c 2019-08-24 23:09:18.000000000 +0000
|
|
@@ -26,7 +26,7 @@
|
|
* authorization. *
|
|
****************************************************************************/
|
|
/*
|
|
- * $Id: extended_color.c,v 1.13 2019/01/21 14:59:34 tom Exp $
|
|
+ * $Id: extended_color.c,v 1.14 2019/08/24 23:09:18 tom Exp $
|
|
*/
|
|
|
|
#include <test.priv.h>
|
|
@@ -209,8 +209,8 @@
|
|
|
|
printw("Drawing soft-key tabs with pair 2\n");
|
|
slk_attrset(A_BOLD); /* reverse-video is hard to see */
|
|
- i = if_opt_s(extended_slk_color_sp(sp, 2),
|
|
- extended_slk_color(2));
|
|
+ (void) if_opt_s(extended_slk_color_sp(sp, 2),
|
|
+ extended_slk_color(2));
|
|
for (i = 1; i <= 8; ++i) {
|
|
char temp[80];
|
|
_nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "(SLK-%d)", i);
|
|
Index: test/filter.c
|
|
Prereq: 1.32
|
|
--- ncurses-6.1-20190817+/test/filter.c 2017-09-28 23:40:39.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/filter.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 1998-2017,2019 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 *
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey 1998
|
|
*
|
|
- * $Id: filter.c,v 1.32 2017/09/28 23:40:39 tom Exp $
|
|
+ * $Id: filter.c,v 1.33 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* An example of the 'filter()' function in ncurses, this program prompts
|
|
* for commands and executes them (like a command shell). It illustrates
|
|
@@ -100,7 +100,6 @@
|
|
new_command(char *buffer, int length, int underline, bool clocked, bool polled)
|
|
{
|
|
int code = OK;
|
|
- int limit;
|
|
|
|
if (polled) {
|
|
bool done = FALSE;
|
|
@@ -113,6 +112,7 @@
|
|
|
|
timeout(20); /* no one types 50CPS... */
|
|
while (!done) {
|
|
+ int limit;
|
|
int ch = getch();
|
|
|
|
buffer[used] = '\0';
|
|
Index: test/foldkeys.c
|
|
Prereq: 1.7
|
|
--- ncurses-6.1-20190817+/test/foldkeys.c 2018-12-29 17:53:03.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/foldkeys.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2006-2017,2018 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2006-2018,2019 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 *
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey, 2006
|
|
*
|
|
- * $Id: foldkeys.c,v 1.7 2018/12/29 17:53:03 tom Exp $
|
|
+ * $Id: foldkeys.c,v 1.8 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* Demonstrate a method for altering key definitions at runtime.
|
|
*
|
|
@@ -53,10 +53,10 @@
|
|
log_last_line(WINDOW *win)
|
|
{
|
|
FILE *fp;
|
|
- int y, x, n;
|
|
- char temp[256];
|
|
|
|
if ((fp = fopen(MY_LOGFILE, "a")) != 0) {
|
|
+ char temp[256];
|
|
+ int y, x, n;
|
|
int need = sizeof(temp) - 1;
|
|
if (need > COLS)
|
|
need = COLS;
|
|
@@ -195,8 +195,7 @@
|
|
{
|
|
int ch;
|
|
#if HAVE_GETTIMEOFDAY
|
|
- int secs, msecs;
|
|
- struct timeval current, previous;
|
|
+ struct timeval previous;
|
|
#endif
|
|
|
|
if (newterm(0, stdout, stdin) == 0) {
|
|
@@ -224,6 +223,9 @@
|
|
const char *name = keyname(escaped ? (ch - MY_KEYS) : ch);
|
|
|
|
#if HAVE_GETTIMEOFDAY
|
|
+ int secs, msecs;
|
|
+ struct timeval current;
|
|
+
|
|
gettimeofday(¤t, 0);
|
|
secs = (int) (current.tv_sec - previous.tv_sec);
|
|
msecs = (int) ((current.tv_usec - previous.tv_usec) / 1000);
|
|
Index: test/gdc.c
|
|
Prereq: 1.51
|
|
--- ncurses-6.1-20190817+/test/gdc.c 2017-09-30 18:10:05.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/gdc.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 1998-2017,2019 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 *
|
|
@@ -33,7 +33,7 @@
|
|
* modified 10-18-89 for curses (jrl)
|
|
* 10-18-89 added signal handling
|
|
*
|
|
- * $Id: gdc.c,v 1.51 2017/09/30 18:10:05 tom Exp $
|
|
+ * $Id: gdc.c,v 1.52 2019/08/24 23:11:01 tom Exp $
|
|
*/
|
|
|
|
#include <test.priv.h>
|
|
@@ -86,7 +86,6 @@
|
|
drawbox(bool scrolling)
|
|
{
|
|
chtype bottom[XLENGTH + 1];
|
|
- int n;
|
|
|
|
if (hascolor)
|
|
(void) attrset(AttrArg(COLOR_PAIR(PAIR_FRAMES), 0));
|
|
@@ -97,6 +96,7 @@
|
|
|
|
MvAddCh(YBASE + YDEPTH, XBASE - 1, ACS_LLCORNER);
|
|
if ((mvinchnstr(YBASE + YDEPTH, XBASE, bottom, XLENGTH)) != ERR) {
|
|
+ int n;
|
|
for (n = 0; n < XLENGTH; n++) {
|
|
if (!scrolling)
|
|
bottom[n] &= ~A_COLOR;
|
|
@@ -251,9 +251,9 @@
|
|
if (optind < argc) {
|
|
count = atoi(argv[optind++]);
|
|
assert(count >= 0);
|
|
+ if (optind < argc)
|
|
+ usage();
|
|
}
|
|
- if (optind < argc)
|
|
- usage();
|
|
|
|
InitAndCatch({
|
|
if (redirected) {
|
|
Index: test/inch_wide.c
|
|
Prereq: 1.9
|
|
--- ncurses-6.1-20190817+/test/inch_wide.c 2017-04-29 22:03:21.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/inch_wide.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2007-2010,2017 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2007-2017,2019 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: inch_wide.c,v 1.9 2017/04/29 22:03:21 tom Exp $
|
|
+ * $Id: inch_wide.c,v 1.10 2019/08/24 23:11:01 tom Exp $
|
|
*/
|
|
/*
|
|
int in_wch(cchar_t *wcval);
|
|
@@ -78,7 +78,6 @@
|
|
int j;
|
|
int txt_x = 0, txt_y = 0;
|
|
int base_y;
|
|
- int limit;
|
|
cchar_t ch;
|
|
cchar_t text[MAX_COLS];
|
|
|
|
@@ -122,6 +121,8 @@
|
|
}
|
|
|
|
while (!Quit(j = mvwgetch(txtwin, txt_y, txt_x))) {
|
|
+ int limit;
|
|
+
|
|
switch (j) {
|
|
case KEY_DOWN:
|
|
case 'j':
|
|
Index: test/inchs.c
|
|
Prereq: 1.16
|
|
--- ncurses-6.1-20190817+/test/inchs.c 2017-09-06 09:20:42.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/inchs.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2007-2012,2017 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2007-2017,2019 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: inchs.c,v 1.16 2017/09/06 09:20:42 tom Exp $
|
|
+ * $Id: inchs.c,v 1.17 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* Author: Thomas E Dickey
|
|
*/
|
|
@@ -87,7 +87,6 @@
|
|
int ch, j;
|
|
int txt_x = 0, txt_y = 0;
|
|
int base_y;
|
|
- int limit;
|
|
chtype text[MAX_COLS];
|
|
|
|
if (argv[level] == 0) {
|
|
@@ -132,6 +131,8 @@
|
|
}
|
|
|
|
while (!Quit(j = mvwgetch(txtwin, txt_y, txt_x))) {
|
|
+ int limit;
|
|
+
|
|
switch (j) {
|
|
case KEY_DOWN:
|
|
case 'j':
|
|
Index: test/insdelln.c
|
|
Prereq: 1.12
|
|
--- ncurses-6.1-20190817+/test/insdelln.c 2017-09-07 08:24:24.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/insdelln.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2008-2014,2017 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2008-2017,2019 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: insdelln.c,v 1.12 2017/09/07 08:24:24 tom Exp $
|
|
+ * $Id: insdelln.c,v 1.13 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* test-driver for deleteln, wdeleteln, insdelln, winsdelln, insertln, winsertln
|
|
*/
|
|
@@ -70,10 +70,10 @@
|
|
};
|
|
/* *INDENT-ON* */
|
|
|
|
- static bool first = TRUE;
|
|
const char *result = 0;
|
|
|
|
if (has_colors()) {
|
|
+ static bool first = TRUE;
|
|
if (first) {
|
|
unsigned n;
|
|
|
|
Index: test/knight.c
|
|
Prereq: 1.45
|
|
--- ncurses-6.1-20190817+/test/knight.c 2019-04-20 20:34:55.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/knight.c 2019-08-24 22:40:52.000000000 +0000
|
|
@@ -33,7 +33,7 @@
|
|
* Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995. Mouse support
|
|
* added September 20th 1995.
|
|
*
|
|
- * $Id: knight.c,v 1.45 2019/04/20 20:34:55 tom Exp $
|
|
+ * $Id: knight.c,v 1.46 2019/08/24 22:40:52 tom Exp $
|
|
*/
|
|
|
|
#include <test.priv.h>
|
|
@@ -328,21 +328,20 @@
|
|
static bool
|
|
find_next_move(SQUARES squares, HISTORY * doneData, int doneSize, int *y, int *x)
|
|
{
|
|
- unsigned j, k;
|
|
- int found = -1;
|
|
- int first = -1;
|
|
- int next = -1;
|
|
- int oldy, oldx;
|
|
- int newy, newx;
|
|
bool result = FALSE;
|
|
|
|
if (doneSize > 1) {
|
|
- oldy = doneData[doneSize - 1].y;
|
|
- oldx = doneData[doneSize - 1].x;
|
|
+ unsigned j;
|
|
+ int oldy = doneData[doneSize - 1].y;
|
|
+ int oldx = doneData[doneSize - 1].x;
|
|
+ int found = -1;
|
|
+ int first = -1;
|
|
+ int next = -1;
|
|
+
|
|
for (j = 0; j < MAX_OFFSET * 2; j++) {
|
|
- k = j % MAX_OFFSET;
|
|
- newy = oldy + offsets[k].y;
|
|
- newx = oldx + offsets[k].x;
|
|
+ unsigned k = j % MAX_OFFSET;
|
|
+ int newy = oldy + offsets[k].y;
|
|
+ int newx = oldx + offsets[k].x;
|
|
if (isUnusedYX(squares, newy, newx)) {
|
|
if (first < 0)
|
|
first = (int) k;
|
|
@@ -502,12 +501,11 @@
|
|
int result;
|
|
|
|
if (total < maxmoves) {
|
|
- int try_x, try_y;
|
|
unsigned k;
|
|
|
|
for (k = 0; k < MAX_OFFSET; k++) {
|
|
- try_x = x + offsets[k].x;
|
|
- try_y = y + offsets[k].y;
|
|
+ int try_x = x + offsets[k].x;
|
|
+ int try_y = y + offsets[k].y;
|
|
if (isUnusedYX(squares, try_y, try_x)) {
|
|
++test_test;
|
|
squares[try_y][try_x] = total + 1;
|
|
Index: test/list_keys.c
|
|
Prereq: 1.24
|
|
--- ncurses-6.1-20190817+/test/list_keys.c 2018-05-20 18:56:56.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/list_keys.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2016-2017,2018 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2016-2018,2019 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: list_keys.c,v 1.24 2018/05/20 18:56:56 tom Exp $
|
|
+ * $Id: list_keys.c,v 1.25 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* Author: Thomas E Dickey
|
|
*
|
|
@@ -88,7 +88,6 @@
|
|
show_key(const char *name, bool show)
|
|
{
|
|
int width = 0;
|
|
- char buffer[10];
|
|
NCURSES_CONST char *value = tigetstr((NCURSES_CONST char *) name);
|
|
|
|
if (show && t_opt)
|
|
@@ -96,6 +95,7 @@
|
|
|
|
if (value != 0 && value != (char *) -1) {
|
|
while (*value != 0) {
|
|
+ char buffer[10];
|
|
int ch = UChar(*value++);
|
|
switch (ch) {
|
|
case '\177':
|
|
@@ -197,8 +197,8 @@
|
|
static void
|
|
draw_line(int width)
|
|
{
|
|
- int j;
|
|
if (!t_opt) {
|
|
+ int j;
|
|
for (j = 0; j < width; ++j) {
|
|
printf("-");
|
|
}
|
|
@@ -285,8 +285,8 @@
|
|
}
|
|
#if NCURSES_XNAMES
|
|
if (x_opt) {
|
|
- TERMTYPE *term;
|
|
for (k = 0; k < count; ++k) {
|
|
+ TERMTYPE *term;
|
|
set_curterm(terms[k]);
|
|
term = (TERMTYPE *) cur_term;
|
|
total += (size_t) (NUM_STRINGS(term) - STRCOUNT);
|
|
@@ -305,9 +305,11 @@
|
|
}
|
|
#if NCURSES_XNAMES
|
|
if (x_opt) {
|
|
- TERMTYPE *term;
|
|
int m, n;
|
|
+
|
|
for (k = 0; k < count; ++k) {
|
|
+ TERMTYPE *term;
|
|
+
|
|
set_curterm(terms[k]);
|
|
term = (TERMTYPE *) cur_term;
|
|
for (n = STRCOUNT; n < NUM_STRINGS(term); ++n) {
|
|
Index: test/ncurses.c
|
|
Prereq: 1.516
|
|
--- ncurses-6.1-20190817+/test/ncurses.c 2019-08-10 19:38:41.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/ncurses.c 2019-08-24 23:09:03.000000000 +0000
|
|
@@ -40,7 +40,7 @@
|
|
Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993
|
|
Thomas E. Dickey (beginning revision 1.27 in 1996).
|
|
|
|
-$Id: ncurses.c,v 1.516 2019/08/10 19:38:41 tom Exp $
|
|
+$Id: ncurses.c,v 1.517 2019/08/24 23:09:03 tom Exp $
|
|
|
|
***************************************************************************/
|
|
|
|
@@ -226,7 +226,7 @@
|
|
static void
|
|
wGetstring(WINDOW *win, char *buffer, int limit)
|
|
{
|
|
- int y0, x0, x, ch;
|
|
+ int y0, x0, x;
|
|
bool done = FALSE;
|
|
|
|
echo();
|
|
@@ -235,6 +235,7 @@
|
|
|
|
x = (int) strlen(buffer);
|
|
while (!done) {
|
|
+ int ch;
|
|
if (x > (int) strlen(buffer))
|
|
x = (int) strlen(buffer);
|
|
wmove(win, y0, x0);
|
|
@@ -579,7 +580,6 @@
|
|
static void
|
|
show_mouse(WINDOW *win)
|
|
{
|
|
- int y, x;
|
|
MEVENT event;
|
|
bool outside;
|
|
bool show_loc;
|
|
@@ -602,6 +602,7 @@
|
|
show_loc = wmouse_trafo(win, &event.y, &event.x, FALSE);
|
|
|
|
if (show_loc) {
|
|
+ int y, x;
|
|
getyx(win, y, x);
|
|
wmove(win, event.y, event.x);
|
|
waddch(win, '*');
|
|
@@ -818,7 +819,6 @@
|
|
{
|
|
char buf[BUFSIZ];
|
|
int first_y, first_x;
|
|
- int c;
|
|
int incount = 0;
|
|
GetchFlags flags;
|
|
|
|
@@ -832,6 +832,8 @@
|
|
scrollok(win, TRUE);
|
|
|
|
for (;;) {
|
|
+ int c;
|
|
+
|
|
while ((c = wGetchar(win)) == ERR) {
|
|
incount++;
|
|
if (blocking_getch(flags, delay)) {
|
|
@@ -1076,7 +1078,6 @@
|
|
wint_t c;
|
|
int incount = 0;
|
|
GetchFlags flags;
|
|
- int code;
|
|
char *temp;
|
|
|
|
init_getch(win, flags, delay);
|
|
@@ -1089,6 +1090,8 @@
|
|
scrollok(win, TRUE);
|
|
|
|
for (;;) {
|
|
+ int code;
|
|
+
|
|
while ((code = wGet_wchar(win, &c)) == ERR) {
|
|
incount++;
|
|
if (blocking_getch(flags, delay)) {
|
|
@@ -1385,9 +1388,10 @@
|
|
{
|
|
char save = attr_test_string[0];
|
|
int first = ((int) UChar(save)) + adjust;
|
|
- int j, k;
|
|
|
|
if (first >= ATTRSTRING_1ST) {
|
|
+ int j, k;
|
|
+
|
|
for (j = 0, k = first; j < MAX_ATTRSTRING; ++j, ++k) {
|
|
if (k > ATTRSTRING_END)
|
|
break;
|
|
@@ -1451,10 +1455,9 @@
|
|
werase(win);
|
|
if (attr & A_ALTCHARSET) {
|
|
const char *s;
|
|
- chtype ch;
|
|
|
|
for (s = attr_test_string; *s != '\0'; ++s) {
|
|
- ch = UChar(*s);
|
|
+ chtype ch = UChar(*s);
|
|
(void) waddch(win, ch | attr);
|
|
}
|
|
} else {
|
|
@@ -1662,12 +1665,13 @@
|
|
NCURSES_COLOR_T bg = COLOR_BLACK;
|
|
NCURSES_COLOR_T tx = -1;
|
|
int ac = 0;
|
|
- unsigned j, k;
|
|
WINDOW *my_wins[SIZEOF(attrs_to_test)];
|
|
ATTR_TBL my_list[SIZEOF(attrs_to_test)];
|
|
unsigned my_size = init_attr_list(my_list, termattrs());
|
|
|
|
if (my_size > 1) {
|
|
+ unsigned j, k;
|
|
+
|
|
for (j = 0; j < my_size; ++j) {
|
|
my_wins[j] = subwin(stdscr,
|
|
1, LEN_ATTRSTRING,
|
|
@@ -1791,9 +1795,10 @@
|
|
{
|
|
wchar_t save = wide_attr_test_string[0];
|
|
int first = ((int) normal_wchar(save)) + adjust;
|
|
- int j, k;
|
|
|
|
if (first >= ATTRSTRING_1ST) {
|
|
+ int j, k;
|
|
+
|
|
for (j = 0, k = first; j < MAX_ATTRSTRING; ++j, ++k) {
|
|
if (k > ATTRSTRING_END)
|
|
break;
|
|
@@ -1843,10 +1848,11 @@
|
|
attr_t attr;
|
|
cchar_t ch;
|
|
NCURSES_PAIRS_T pair;
|
|
- wchar_t wch[CCHARW_MAX];
|
|
|
|
memset(&ch, 0, sizeof(ch));
|
|
if (getbkgrnd(&ch) != ERR) {
|
|
+ wchar_t wch[CCHARW_MAX];
|
|
+
|
|
if (getcchar(&ch, wch, &attr, &pair, 0) != ERR) {
|
|
result = attr;
|
|
}
|
|
@@ -2022,12 +2028,13 @@
|
|
NCURSES_COLOR_T bg = COLOR_BLACK;
|
|
NCURSES_COLOR_T tx = -1;
|
|
int ac = 0;
|
|
- unsigned j, k;
|
|
W_ATTR_TBL my_list[SIZEOF(w_attrs_to_test)];
|
|
WINDOW *my_wins[SIZEOF(w_attrs_to_test)];
|
|
unsigned my_size = init_w_attr_list(my_list, term_attrs());
|
|
|
|
if (my_size > 1) {
|
|
+ unsigned j, k;
|
|
+
|
|
for (j = 0; j < my_size; ++j) {
|
|
my_wins[j] = subwin(stdscr,
|
|
1, LEN_ATTRSTRING,
|
|
@@ -2133,13 +2140,11 @@
|
|
int width = 8;
|
|
|
|
if (wide || zoom) {
|
|
- int have;
|
|
-
|
|
_nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp))
|
|
"%02d", color);
|
|
if (wide)
|
|
width = 4;
|
|
- if ((have = (int) strlen(temp)) >= width) {
|
|
+ if ((int) strlen(temp) >= width) {
|
|
int pwr2 = 0;
|
|
while ((1 << pwr2) < color)
|
|
++pwr2;
|
|
@@ -2516,7 +2521,7 @@
|
|
int base_row = 0;
|
|
int grid_top = top + 3;
|
|
int page_size = (LINES - grid_top);
|
|
- int pairs_max = (unsigned short) (-1);
|
|
+ int pairs_max;
|
|
int colors_max = COLORS;
|
|
int col_limit;
|
|
int row_limit;
|
|
@@ -2839,14 +2844,16 @@
|
|
*/
|
|
if (xterm_colors) {
|
|
int n;
|
|
- int got;
|
|
char result[BUFSIZ];
|
|
int check_n;
|
|
unsigned check_r, check_g, check_b;
|
|
|
|
raw();
|
|
noecho();
|
|
+
|
|
for (n = 0; n < MaxColors; ++n) {
|
|
+ int got;
|
|
+
|
|
fprintf(stderr, "\033]4;%d;?\007", n);
|
|
got = (int) read(0, result, sizeof(result) - 1);
|
|
if (got < 0)
|
|
@@ -3500,14 +3507,15 @@
|
|
char *temp = strdup(s);
|
|
size_t used = strlen(temp);
|
|
size_t want = SLKLEN;
|
|
- size_t test;
|
|
#ifndef state_unused
|
|
mbstate_t state;
|
|
#endif
|
|
|
|
buf[0] = L'\0';
|
|
while (want > 0 && used != 0) {
|
|
+ size_t test;
|
|
const char *base = s;
|
|
+
|
|
reset_mbytes(state);
|
|
test = count_mbytes(base, 0, &state);
|
|
if (test == (size_t) -1) {
|
|
@@ -3923,15 +3931,14 @@
|
|
static cchar_t *
|
|
merge_wide_attr(cchar_t *dst, const cchar_t *src, attr_t attr, NCURSES_PAIRS_T pair)
|
|
{
|
|
- int count;
|
|
|
|
*dst = *src;
|
|
do {
|
|
+ int count;
|
|
TEST_CCHAR(src, count, {
|
|
attr |= (test_attrs & A_ALTCHARSET);
|
|
setcchar(dst, test_wch, attr, pair, NULL);
|
|
- }
|
|
- , {
|
|
+ }, {
|
|
;
|
|
});
|
|
} while (0);
|
|
@@ -4003,7 +4010,6 @@
|
|
wchar_t codes[10];
|
|
char tmp[80];
|
|
int count = repeat;
|
|
- int y, x;
|
|
|
|
_nc_SPRINTF(tmp, _nc_SLIMIT(sizeof(tmp))
|
|
"%3ld (0x%lx)", (long) code, (long) code);
|
|
@@ -4014,6 +4020,8 @@
|
|
setcchar(&temp, codes, attr, pair, 0);
|
|
|
|
do {
|
|
+ int y, x;
|
|
+
|
|
/*
|
|
* Give non-spacing characters something to combine with. If we
|
|
* don't, they'll bunch up in a heap on the space after the ":".
|
|
@@ -4653,13 +4661,15 @@
|
|
};
|
|
#undef DATA
|
|
size_t n;
|
|
- int x;
|
|
bool do_keypad = HaveKeypad(curp);
|
|
bool do_scroll = HaveScroll(curp);
|
|
char buf[BUFSIZ];
|
|
|
|
move(LINES - 4, 0);
|
|
+
|
|
for (n = 0; n < SIZEOF(legend); n++) {
|
|
+ int x;
|
|
+
|
|
switch (legend[n].code) {
|
|
default:
|
|
_nc_STRCPY(buf, legend[n].msg, sizeof(buf));
|
|
@@ -5003,7 +5013,7 @@
|
|
case CTRL('X'): /* resize window */
|
|
if (current) {
|
|
pair *tmp, ul, lr;
|
|
- int i, mx, my;
|
|
+ int mx, my;
|
|
|
|
move(0, 0);
|
|
clrtoeol();
|
|
@@ -5032,11 +5042,13 @@
|
|
wclrtobot(current->wind);
|
|
wmove(current->wind, lr.y, lr.x);
|
|
}
|
|
- if (mx > tmp->x - ul.x)
|
|
+ if (mx > tmp->x - ul.x) {
|
|
+ int i;
|
|
for (i = 0; i < my; i++) {
|
|
wmove(current->wind, i, tmp->x - ul.x + 1);
|
|
wclrtoeol(current->wind);
|
|
}
|
|
+ }
|
|
wnoutrefresh(current->wind);
|
|
|
|
memcpy(&lr, tmp, sizeof(pair));
|
|
@@ -5850,13 +5862,13 @@
|
|
{
|
|
static int count;
|
|
static int last;
|
|
- int c;
|
|
|
|
if ((pending_pan = (count > 0)) != FALSE) {
|
|
count--;
|
|
pending_pan = (count != 0);
|
|
} else {
|
|
for (;;) {
|
|
+ int c;
|
|
switch (c = wGetchar(win)) {
|
|
case '!':
|
|
ShellOut(FALSE);
|
|
@@ -6210,10 +6222,10 @@
|
|
tracetrace(unsigned tlevel)
|
|
{
|
|
static char *buf;
|
|
- static size_t need = 12;
|
|
int n;
|
|
|
|
if (buf == 0) {
|
|
+ static size_t need = 12;
|
|
for (n = 0; t_tbl[n].name != 0; n++)
|
|
need += strlen(t_tbl[n].name) + 2;
|
|
buf = typeMalloc(char, need);
|
|
@@ -6425,9 +6437,9 @@
|
|
size_t have = (source ? strlen(source) : 0) + 1;
|
|
size_t need = 80 + have;
|
|
char *temp = malloc(need);
|
|
- size_t len;
|
|
|
|
if (temp != 0) {
|
|
+ size_t len;
|
|
_nc_STRNCPY(temp, source ? source : "", have + 1);
|
|
len = (size_t) (char *) field_userptr(me);
|
|
if (c <= KEY_MAX) {
|
|
@@ -6530,7 +6542,6 @@
|
|
|
|
static int mode = REQ_INS_MODE;
|
|
int c = wGetchar(w);
|
|
- unsigned n;
|
|
FIELD *me = current_field(f);
|
|
bool current = TRUE;
|
|
|
|
@@ -6542,6 +6553,7 @@
|
|
}
|
|
c = mode;
|
|
} else {
|
|
+ unsigned n;
|
|
for (n = 0; n < SIZEOF(lookup); n++) {
|
|
if (lookup[n].code == c) {
|
|
c = lookup[n].result;
|
|
@@ -6676,12 +6688,11 @@
|
|
static int
|
|
form_test(bool recur GCC_UNUSED)
|
|
{
|
|
- WINDOW *w;
|
|
FORM *form;
|
|
FIELD *f[12], *secure;
|
|
FIELDTYPE *fty_middle = new_fieldtype(mi_field_check, mi_char_check);
|
|
FIELDTYPE *fty_passwd = new_fieldtype(pw_field_check, pw_char_check);
|
|
- int finished = 0, c;
|
|
+ int c;
|
|
unsigned n = 0;
|
|
|
|
#ifdef NCURSES_MOUSE_VERSION
|
|
@@ -6731,6 +6742,8 @@
|
|
f[n] = (FIELD *) 0;
|
|
|
|
if ((form = new_form(f)) != 0) {
|
|
+ WINDOW *w;
|
|
+ int finished = 0;
|
|
|
|
display_form(form);
|
|
|
|
@@ -7024,11 +7037,8 @@
|
|
static int
|
|
overlap_help(int state, int flavors[OVERLAP_FLAVORS])
|
|
{
|
|
- int row;
|
|
- int col;
|
|
int item;
|
|
int limit[OVERLAP_FLAVORS];
|
|
- const char *ths, *tht;
|
|
char msg[80];
|
|
|
|
if (state < 0)
|
|
@@ -7037,10 +7047,10 @@
|
|
assert(state >= 0 && state < OVERLAP_FLAVORS);
|
|
|
|
for (item = 0; item < (2 * OVERLAP_FLAVORS); ++item) {
|
|
- row = item / 2;
|
|
- col = item % 2;
|
|
- ths = col ? "B" : "A";
|
|
- tht = col ? "A" : "B";
|
|
+ int row = item / 2;
|
|
+ int col = item % 2;
|
|
+ const char *ths = col ? "B" : "A";
|
|
+ const char *tht = col ? "A" : "B";
|
|
|
|
switch ((otBASE) row) {
|
|
case otBASE_refresh:
|
|
Index: test/newdemo.c
|
|
Prereq: 1.45
|
|
--- ncurses-6.1-20190817+/test/newdemo.c 2017-09-30 15:43:08.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/newdemo.c 2019-08-24 23:02:49.000000000 +0000
|
|
@@ -2,7 +2,7 @@
|
|
* newdemo.c - A demo program using PDCurses. The program illustrate
|
|
* the use of colours for text output.
|
|
*
|
|
- * $Id: newdemo.c,v 1.45 2017/09/30 15:43:08 tom Exp $
|
|
+ * $Id: newdemo.c,v 1.46 2019/08/24 23:02:49 tom Exp $
|
|
*/
|
|
|
|
#include <test.priv.h>
|
|
@@ -61,11 +61,12 @@
|
|
WaitForUser(WINDOW *win)
|
|
{
|
|
time_t t;
|
|
- chtype key;
|
|
|
|
nodelay(win, TRUE);
|
|
t = time((time_t *) 0);
|
|
+
|
|
while (1) {
|
|
+ chtype key;
|
|
if ((int) (key = (chtype) wgetch(win)) != ERR) {
|
|
if (key == 'q' || key == 'Q')
|
|
return 1;
|
|
@@ -221,12 +222,10 @@
|
|
main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
|
|
{
|
|
WINDOW *win;
|
|
- int w, x, y, i, j, k;
|
|
+ int x, y, i, k;
|
|
char buffer[SIZEOF(messages) * 80];
|
|
- const char *message;
|
|
int width, height;
|
|
chtype save[80];
|
|
- chtype c;
|
|
|
|
setlocale(LC_ALL, "");
|
|
|
|
@@ -244,6 +243,11 @@
|
|
}
|
|
|
|
while (1) {
|
|
+ int w;
|
|
+ int j;
|
|
+ chtype c;
|
|
+ const char *message;
|
|
+
|
|
set_colors(win, 1, COLOR_WHITE, COLOR_BLUE);
|
|
werase(win);
|
|
|
|
Index: test/pair_content.c
|
|
Prereq: 1.12
|
|
--- ncurses-6.1-20190817+/test/pair_content.c 2019-01-21 01:05:22.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/pair_content.c 2019-08-24 23:02:49.000000000 +0000
|
|
@@ -26,7 +26,7 @@
|
|
* authorization. *
|
|
****************************************************************************/
|
|
/*
|
|
- * $Id: pair_content.c,v 1.12 2019/01/21 01:05:22 tom Exp $
|
|
+ * $Id: pair_content.c,v 1.13 2019/08/24 23:02:49 tom Exp $
|
|
*/
|
|
|
|
#define NEED_TIME_H
|
|
@@ -237,7 +237,6 @@
|
|
main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
|
|
{
|
|
int i;
|
|
- int repeat;
|
|
|
|
while ((i = getopt(argc, argv, "f:il:npr:sx")) != -1) {
|
|
switch (i) {
|
|
@@ -291,6 +290,7 @@
|
|
}
|
|
}
|
|
} else {
|
|
+ int repeat;
|
|
|
|
for (repeat = 0; repeat < r_opt; ++repeat) {
|
|
run_test();
|
|
Index: test/picsmap.c
|
|
Prereq: 1.129
|
|
--- ncurses-6.1-20190817+/test/picsmap.c 2019-04-20 20:33:51.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/picsmap.c 2019-08-24 23:07:34.000000000 +0000
|
|
@@ -26,7 +26,7 @@
|
|
* authorization. *
|
|
****************************************************************************/
|
|
/*
|
|
- * $Id: picsmap.c,v 1.129 2019/04/20 20:33:51 tom Exp $
|
|
+ * $Id: picsmap.c,v 1.130 2019/08/24 23:07:34 tom Exp $
|
|
*
|
|
* Author: Thomas E. Dickey
|
|
*
|
|
@@ -430,9 +430,7 @@
|
|
if (is_file(filename, &sb)) {
|
|
size_t size = (size_t) sb.st_size;
|
|
char *blob = typeCalloc(char, size + 1);
|
|
- bool had_line = TRUE;
|
|
bool binary = FALSE;
|
|
- unsigned j;
|
|
unsigned k = 0;
|
|
|
|
result = typeCalloc(char *, size + 1);
|
|
@@ -442,7 +440,11 @@
|
|
FILE *fp = fopen(filename, "r");
|
|
if (fp != 0) {
|
|
logmsg("opened %s", filename);
|
|
+
|
|
if (fread(blob, sizeof(char), size, fp) == size) {
|
|
+ bool had_line = TRUE;
|
|
+ unsigned j;
|
|
+
|
|
for (j = 0; (size_t) j < size; ++j) {
|
|
if (blob[j] == '\0' ||
|
|
(UChar(blob[j]) < 32 &&
|
|
@@ -683,9 +685,9 @@
|
|
if ((power2 != COLORS) || ((shift % 3) != 0)) {
|
|
if (all_colors == 0) {
|
|
init_palette(getenv("TERM"));
|
|
- }
|
|
- if (all_colors == 0) {
|
|
- giveup("With %d colors, you need a palette-file", COLORS);
|
|
+ if (all_colors == 0) {
|
|
+ giveup("With %d colors, you need a palette-file", COLORS);
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
@@ -876,7 +878,6 @@
|
|
arg1[cpp] = '\0';
|
|
result = 1;
|
|
} else {
|
|
- char *t;
|
|
const char *s = skip_cs(source);
|
|
size_t have = strlen(source);
|
|
|
|
@@ -884,6 +885,7 @@
|
|
memcpy(arg1, s, (size_t) cpp);
|
|
s += cpp;
|
|
while (*s++ == '\t') {
|
|
+ char *t;
|
|
for (t = arg2; (*s != '\0') && strchr("\t\"", *s) == 0;) {
|
|
if (*s == ' ') {
|
|
s = skip_cs(s);
|
|
@@ -1333,9 +1335,9 @@
|
|
/* subsequent lines begin "col,row: (r,g,b,a) #RGB" */
|
|
int r, g, b, nocolor;
|
|
unsigned check;
|
|
- int which, c;
|
|
char *t;
|
|
char *s = t = strchr(buffer, '#');
|
|
+
|
|
if (s != 0) {
|
|
/* after the "#RGB", there are differences - just ignore */
|
|
while (*s != '\0' && !isspace(UChar(*s)))
|
|
@@ -1347,6 +1349,8 @@
|
|
&col, &row,
|
|
&r, &g, &b, &nocolor,
|
|
&check)) {
|
|
+ int which, c;
|
|
+
|
|
if ((s - t) > 8) /* 6 hex digits vs 8 */
|
|
check /= 256;
|
|
if (r > MaxRGB ||
|
|
@@ -1474,7 +1478,6 @@
|
|
{
|
|
int y, x;
|
|
int n;
|
|
- int my_pair, my_color;
|
|
|
|
debugmsg("called show_picture");
|
|
logmsg("...using %dx%d screen", LINES, COLS);
|
|
@@ -1487,8 +1490,8 @@
|
|
if (has_colors()) {
|
|
logmsg("...using %d colors", pics->colors);
|
|
for (n = 0; n < pics->colors; ++n) {
|
|
- my_pair = (n + 1);
|
|
- my_color = map_color(fg_color(pics, n));
|
|
+ int my_pair = (n + 1);
|
|
+ int my_color = map_color(fg_color(pics, n));
|
|
#if USE_EXTENDED_COLORS
|
|
if (use_extended_pairs) {
|
|
init_extended_pair(my_pair, my_color, my_color);
|
|
@@ -1507,7 +1510,10 @@
|
|
if (y >= LINES)
|
|
break;
|
|
move(y, 0);
|
|
+
|
|
for (x = 0; x < pics->wide; ++x) {
|
|
+ int my_pair;
|
|
+
|
|
if (x >= COLS)
|
|
break;
|
|
n = (y * pics->wide + x);
|
|
@@ -1557,11 +1563,9 @@
|
|
static void
|
|
report_colors(PICS_HEAD * pics)
|
|
{
|
|
- int j, k;
|
|
- int high;
|
|
- int wide = 4;
|
|
int accum;
|
|
double level;
|
|
+ int j;
|
|
int shift;
|
|
int total;
|
|
char buffer[256];
|
|
@@ -1575,6 +1579,8 @@
|
|
*/
|
|
if (debugging && (pics->colors < 1000)) {
|
|
int digits = 0;
|
|
+ int high;
|
|
+ int wide = 4;
|
|
for (j = pics->colors; j != 0; j /= 10) {
|
|
++digits;
|
|
if (j < 10)
|
|
@@ -1585,6 +1591,7 @@
|
|
logmsg("These colors were used:");
|
|
high = (pics->colors + wide - 1) / wide;
|
|
for (j = 0; j < high && j < pics->colors; ++j) {
|
|
+ int k;
|
|
char *s = buffer;
|
|
*s = '\0';
|
|
for (k = 0; k < wide; ++k) {
|
|
Index: test/railroad.c
|
|
Prereq: 1.22
|
|
--- ncurses-6.1-20190817+/test/railroad.c 2017-09-30 17:55:22.000000000 +0000
|
|
+++ ncurses-6.1-20190824/test/railroad.c 2019-08-24 23:11:01.000000000 +0000
|
|
@@ -1,5 +1,5 @@
|
|
/****************************************************************************
|
|
- * Copyright (c) 2000-2013,2017 Free Software Foundation, Inc. *
|
|
+ * Copyright (c) 2000-2017,2019 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 *
|
|
@@ -29,7 +29,7 @@
|
|
/*
|
|
* Author: Thomas E. Dickey - 2000
|
|
*
|
|
- * $Id: railroad.c,v 1.22 2017/09/30 17:55:22 tom Exp $
|
|
+ * $Id: railroad.c,v 1.23 2019/08/24 23:11:01 tom Exp $
|
|
*
|
|
* A simple demo of the termcap interface.
|
|
*/
|
|
@@ -113,7 +113,7 @@
|
|
ShowSign(char *string)
|
|
{
|
|
char *base = string;
|
|
- int ch, first, last;
|
|
+ int first, last;
|
|
|
|
if (moveit != 0) {
|
|
tputs(tgoto(moveit, 0, height - 1), 1, outc);
|
|
@@ -121,7 +121,7 @@
|
|
}
|
|
|
|
while (*string != 0) {
|
|
- ch = *string;
|
|
+ int ch = *string;
|
|
if (ch != ' ') {
|
|
if (moveit != 0) {
|
|
for (first = length - 2; first >= (string - base); first--) {
|