Hello community, here is the log from the commit of package newt for openSUSE:Factory checked in at 2020-04-27 23:29:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/newt (Old) and /work/SRC/openSUSE:Factory/.newt.new.2738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "newt" Mon Apr 27 23:29:59 2020 rev:47 rq:796540 version:0.52.21 Changes: -------- --- /work/SRC/openSUSE:Factory/newt/newt.changes 2019-09-05 12:02:41.923938259 +0200 +++ /work/SRC/openSUSE:Factory/.newt.new.2738/newt.changes 2020-04-27 23:30:05.990553709 +0200 @@ -1,0 +2,11 @@ +Thu Apr 23 08:18:18 UTC 2020 - Martin Pluskal <[email protected]> + +- Update to version 0.52.21: + * define env NEWT_NOFLOWCTRL to disable flow control (Robert Gill) + * don't leak memory on errors in dialogboxes + * fix radio button selection check in snack + * fix plural forms in Lithuanian translation (#1568999) + * fix parallel build (Émeric Dupont) + * allow python versions to be specified with --with-python option + +------------------------------------------------------------------- Old: ---- newt-0.52.20.tar.gz New: ---- newt-0.52.21.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ newt.spec ++++++ --- /var/tmp/diff_new_pack.bVdDuP/_old 2020-04-27 23:30:08.962559510 +0200 +++ /var/tmp/diff_new_pack.bVdDuP/_new 2020-04-27 23:30:08.966559517 +0200 @@ -1,7 +1,7 @@ # # spec file for package newt # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,10 +18,10 @@ %define libname lib%{name} %define libsoname %{libname}0_52 +%{!?python2_sitearch: %global python2_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} %bcond_without python2 -%{!?python2_sitearch: %global python2_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} Name: newt -Version: 0.52.20 +Version: 0.52.21 Release: 0 Summary: A library for text mode user interfaces License: LGPL-2.1-or-later @@ -33,6 +33,7 @@ Patch0: newt-0.52.20-implicit-pointer-decl.patch # needed for tutorial.pdf BuildRequires: docbook-toys +BuildRequires: fdupes BuildRequires: pkgconfig BuildRequires: popt-devel BuildRequires: python3-devel @@ -46,7 +47,6 @@ %if %{with python2} BuildRequires: python-devel %endif -BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Newt is a programming library for color text-mode, widget-based user @@ -200,6 +200,7 @@ %endif %py3_compile %{buildroot}/%{python3_sitearch} %py3_compile -O %{buildroot}/%{python3_sitearch} +%fdupes %{buildroot}/%{python3_sitearch} # pointless examples rm %{buildroot}%{_defaultdocdir}/%{name}/examples/*.py @@ -212,7 +213,7 @@ %if 0%{?suse_version} >= 01500 %license %{_defaultdocdir}/%{name}/COPYING %else -%doc %{_defaultdocdir}/%{name}/COPYING +%license %{_defaultdocdir}/%{name}/COPYING %endif %{_bindir}/whiptail %{_mandir}/man1/whiptail.1%{?ext_man} ++++++ newt-0.52.20.tar.gz -> newt-0.52.21.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/CHANGES new/newt-0.52.21/CHANGES --- old/newt-0.52.20/CHANGES 2017-03-17 11:36:31.000000000 +0100 +++ new/newt-0.52.21/CHANGES 2019-05-27 14:57:40.000000000 +0200 @@ -1,3 +1,11 @@ +0.52.21 +- define env NEWT_NOFLOWCTRL to disable flow control (Robert Gill) +- don't leak memory on errors in dialogboxes +- fix radio button selection check in snack +- fix plural forms in Lithuanian translation (#1568999) +- fix parallel build (Émeric Dupont) +- allow python versions to be specified with --with-python option + 0.52.20 - improve handling of long strings in whiptail menu (#1353792) - support screen resize as hotkey in form (#1432926) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/Makefile.in new/newt-0.52.21/Makefile.in --- old/newt-0.52.20/Makefile.in 2017-03-17 11:36:31.000000000 +0100 +++ new/newt-0.52.21/Makefile.in 2019-05-27 14:57:40.000000000 +0200 @@ -123,17 +123,15 @@ depend: $(CC) $(CFLAGS) $(CPPFLAGS) -M $(SOURCES) > .depend -$(SHAREDDIR): - mkdir -p $(SHAREDDIR) - sharedlib: $(LIBNEWTSH) -$(LIBNEWTSH): $(SHAREDDIR) $(SHAREDOBJS) +$(LIBNEWTSH): $(SHAREDOBJS) $(CC) -shared -o $(LIBNEWTSH) $(SHLIBFLAGS) $(SHAREDOBJS) $(LDFLAGS) $(LIBS) ln -fs $(LIBNEWTSONAME) libnewt.$(SOEXT) ln -fs $(LIBNEWTSH) $(LIBNEWTSONAME) $(SHAREDDIR)/%.o : %.c + @mkdir -p $(SHAREDDIR) $(CC) $(SHCFLAGS) -c $(CFLAGS) $(CPPFLAGS) -o $@ $< install: $(LIBNEWT) install-sh whiptail @@ -181,9 +179,6 @@ archive: tag-archive create-archive -upload-archive: - scp -p newt-$(VERSION).tar.gz fedorahosted.org:newt - ifeq (.depend,$(wildcard .depend)) include .depend endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/autogen.sh new/newt-0.52.21/autogen.sh --- old/newt-0.52.20/autogen.sh 2017-03-17 11:36:31.000000000 +0100 +++ new/newt-0.52.21/autogen.sh 2019-05-27 14:57:40.000000000 +0200 @@ -2,5 +2,4 @@ autoheader autoconf -automake --foreign -a -c -f make -C po diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/configure new/newt-0.52.21/configure --- old/newt-0.52.20/configure 2017-03-17 12:13:15.000000000 +0100 +++ new/newt-0.52.21/configure 2019-05-27 14:59:46.000000000 +0200 @@ -629,9 +629,6 @@ CPP GREP LN_S -INSTALL_DATA -INSTALL_SCRIPT -INSTALL_PROGRAM OBJEXT EXEEXT ac_ct_CC @@ -2223,7 +2220,7 @@ PACKAGE=newt -VERSION=0.52.20 +VERSION=0.52.21 SONAME=0.52 ac_config_headers="$ac_config_headers config.h" @@ -3030,128 +3027,6 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -ac_aux_dir= -for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi -done -if test -z "$ac_aux_dir"; then - as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 -fi - -# These three variables are undocumented and unsupported, -# and are intended to be withdrawn in a future Autoconf release. -# They can cause serious problems if a builder's source tree is in a directory -# whose full name contains unusual characters. -ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. -ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. -ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. - - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -# Reject install programs that cannot install multiple files. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 -$as_echo_n "checking for a BSD-compatible install... " >&6; } -if test -z "$INSTALL"; then -if ${ac_cv_path_install+:} false; then : - $as_echo_n "(cached) " >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in #(( - ./ | .// | /[cC]/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - rm -rf conftest.one conftest.two conftest.dir - echo one > conftest.one - echo two > conftest.two - mkdir conftest.dir - if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && - test -s conftest.one && test -s conftest.two && - test -s conftest.dir/conftest.one && - test -s conftest.dir/conftest.two - then - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - fi - done - done - ;; -esac - - done -IFS=$as_save_IFS - -rm -rf conftest.one conftest.two conftest.dir - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. Don't cache a - # value for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - INSTALL=$ac_install_sh - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 -$as_echo "$INSTALL" >&6; } - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s @@ -3950,6 +3825,8 @@ # Check whether --with-python was given. if test "${with_python+set}" = set; then : withval=$with_python; +else + with_python="yes" fi if test "x$with_python" = "xno"; then @@ -3957,7 +3834,12 @@ $as_echo "skipped" >&6; } PYTHONVERS= else - PYTHONVERS=$(ls /usr/include/python*/Python.h 2> /dev/null | sed 's|.*\(python[0-9]*\.[0-9]*\).*|\1|g' | tr '\n' ' ') + if test "x$with_python" = "xyes"; then + PYTHONVERS=$(ls /usr/include/python*/Python.h 2> /dev/null | \ + sed 's|.*\(python[0-9]*\.[0-9]*\).*|\1|g' | tr '\n' ' ') + else + PYTHONVERS="$with_python" + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHONVERS" >&5 $as_echo "$PYTHONVERS" >&6; } fi @@ -4733,7 +4615,6 @@ ac_pwd='$ac_pwd' srcdir='$srcdir' -INSTALL='$INSTALL' test -n "\$AWK" || AWK=awk _ACEOF @@ -5291,10 +5172,6 @@ # CONFIG_FILE # - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 @@ -5348,7 +5225,6 @@ s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/configure.ac new/newt-0.52.21/configure.ac --- old/newt-0.52.20/configure.ac 2017-03-17 11:36:31.000000000 +0100 +++ new/newt-0.52.21/configure.ac 2019-05-27 14:57:40.000000000 +0200 @@ -1,7 +1,7 @@ AC_INIT([newt_pr.h]) PACKAGE=newt -VERSION=0.52.20 +VERSION=0.52.21 SONAME=0.52 AC_CONFIG_HEADER([config.h]) @@ -11,7 +11,6 @@ AC_SUBST([VERSION]) AC_SUBST([SONAME]) AC_PROG_CC -AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_GREP AC_SYS_LARGEFILE @@ -59,12 +58,18 @@ AC_CHECK_HEADERS([popt.h libintl.h]) AC_MSG_CHECKING([for python versions]) -AC_ARG_WITH([python], [ --without-python do not compile python support]) +AC_ARG_WITH([python], [ --without-python do not compile python support], + [], [with_python="yes"]) if test "x$with_python" = "xno"; then AC_MSG_RESULT([skipped]) PYTHONVERS= else - PYTHONVERS=$(ls /usr/include/python*/Python.h 2> /dev/null | sed 's|.*\(python[[0-9]]*\.[[0-9]]*\).*|\1|g' | tr '\n' ' ') + if test "x$with_python" = "xyes"; then + PYTHONVERS=$(ls /usr/include/python*/Python.h 2> /dev/null | \ + sed 's|.*\(python[[0-9]]*\.[[0-9]]*\).*|\1|g' | tr '\n' ' ') + else + PYTHONVERS="$with_python" + fi AC_MSG_RESULT([$PYTHONVERS]) fi AC_SUBST([PYTHONVERS]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/dialogboxes.c new/newt-0.52.21/dialogboxes.c --- old/newt-0.52.20/dialogboxes.c 2017-03-17 11:36:31.000000000 +0100 +++ new/newt-0.52.21/dialogboxes.c 2019-05-27 14:57:40.000000000 +0200 @@ -256,7 +256,7 @@ int listBox(const char * text, int height, int width, poptContext optCon, int flags, const char *default_item, char ** result) { - newtComponent form, okay, tb, answer, listBox; + newtComponent form = NULL, okay, tb, answer, listBox; newtComponent cancel = NULL; const char * arg; char * end; @@ -264,7 +264,7 @@ int numItems = 0; int allocedItems = 5; int i, top; - int rc = DLG_OKAY; + int rc = DLG_ERROR; char buf[MAXBUF]; int maxTagWidth = 0; int maxTextWidth = 0; @@ -275,24 +275,31 @@ const char * text; const char * tag; } * itemInfo = malloc(allocedItems * sizeof(*itemInfo)); + void * tmp; - if (itemInfo == NULL) return DLG_ERROR; - if (!(arg = poptGetArg(optCon))) return DLG_ERROR; + if (itemInfo == NULL) + goto error; + if (!(arg = poptGetArg(optCon))) + goto error; listHeight = strtoul(arg, &end, 10); - if (*end) return DLG_ERROR; + if (*end) + goto error; while ((arg = poptGetArg(optCon))) { if (allocedItems == numItems) { allocedItems += 5; - itemInfo = realloc(itemInfo, sizeof(*itemInfo) * allocedItems); - if (itemInfo == NULL) return DLG_ERROR; + tmp = realloc(itemInfo, sizeof(*itemInfo) * allocedItems); + if (tmp == NULL) + goto error; + itemInfo = tmp; } itemInfo[numItems].tag = arg; if (default_item && (strcmp(default_item, arg) == 0)) { defItem = numItems; } - if (!(arg = poptGetArg(optCon))) return DLG_ERROR; + if (!(arg = poptGetArg(optCon))) + goto error; if (!(flags & FLAG_NOITEM)) { itemInfo[numItems].text = arg; @@ -307,7 +314,7 @@ numItems++; } if (numItems == 0) - return DLG_ERROR; + goto error; if (flags & FLAG_NOTAGS) { maxTagWidth = 0; @@ -385,9 +392,14 @@ else { i = (long) newtListboxGetCurrent(listBox); *result = strdup(itemInfo[i].tag); + if (*result == NULL) + goto error; + rc = DLG_OKAY; } - newtFormDestroy(form); +error: + if (form) + newtFormDestroy(form); free(itemInfo); return rc; @@ -395,7 +407,7 @@ int checkList(const char * text, int height, int width, poptContext optCon, int useRadio, int flags, char *** selections) { - newtComponent form, okay, tb, subform, answer; + newtComponent form = NULL, okay, tb, subform, answer; newtComponent sb = NULL, cancel = NULL; const char * arg; char * end; @@ -404,7 +416,7 @@ int allocedBoxes = 5; int i; int numSelected; - int rc = DLG_OKAY; + int rc = DLG_ERROR; char buf[MAXBUF], format[MAXFORMAT]; int maxWidth = 0; int top; @@ -414,26 +426,39 @@ newtComponent comp; } * cbInfo = malloc(allocedBoxes * sizeof(*cbInfo)); char * cbStates = malloc(allocedBoxes * sizeof(*cbStates)); + void * tmp; - if ( (cbInfo == NULL) || (cbStates == NULL)) return DLG_ERROR; - if (!(arg = poptGetArg(optCon))) return DLG_ERROR; + if (cbInfo == NULL || cbStates == NULL) + goto error; + if (!(arg = poptGetArg(optCon))) + goto error; listHeight = strtoul(arg, &end, 10); - if (*end) return DLG_ERROR; + if (*end) + goto error; while ((arg = poptGetArg(optCon))) { if (allocedBoxes == numBoxes) { allocedBoxes += 5; - cbInfo = realloc(cbInfo, sizeof(*cbInfo) * allocedBoxes); - cbStates = realloc(cbStates, sizeof(*cbStates) * allocedBoxes); - if ((cbInfo == NULL) || (cbStates == NULL)) return DLG_ERROR; + + tmp = realloc(cbInfo, sizeof(*cbInfo) * allocedBoxes); + if (tmp == NULL) + goto error; + cbInfo = tmp; + + tmp = realloc(cbStates, sizeof(*cbStates) * allocedBoxes); + if (tmp == NULL) + goto error; + cbStates = tmp; } cbInfo[numBoxes].tag = arg; - if (!(arg = poptGetArg(optCon))) return DLG_ERROR; + if (!(arg = poptGetArg(optCon))) + goto error; if (!(flags & FLAG_NOITEM)) { cbInfo[numBoxes].text = arg; - if (!(arg = poptGetArg(optCon))) return DLG_ERROR; + if (!(arg = poptGetArg(optCon))) + goto error; } else cbInfo[numBoxes].text = ""; @@ -502,7 +527,7 @@ answer = newtRadioGetCurrent(cbInfo[0].comp); *selections = malloc(sizeof(char *) * 2); if (*selections == NULL) - return DLG_ERROR; + goto error; (*selections)[0] = (*selections)[1] = NULL; for (i = 0; i < numBoxes; i++) if (cbInfo[i].comp == answer) { @@ -517,7 +542,7 @@ *selections = malloc(sizeof(char *) * (numSelected + 1)); if (*selections == NULL) - return DLG_ERROR; + goto error; numSelected = 0; for (i = 0; i < numBoxes; i++) { @@ -527,11 +552,15 @@ (*selections)[numSelected] = NULL; } + + rc = DLG_OKAY; } +error: free(cbInfo); free(cbStates); - newtFormDestroy(form); + if (form) + newtFormDestroy(form); return rc; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/install-sh new/newt-0.52.21/install-sh --- old/newt-0.52.20/install-sh 2017-03-17 12:13:15.000000000 +0100 +++ new/newt-0.52.21/install-sh 1970-01-01 01:00:00.000000000 +0100 @@ -1,501 +0,0 @@ -#!/bin/sh -# install - install a program, script, or datafile - -scriptversion=2013-12-25.23; # UTC - -# This originates from X11R5 (mit/util/scripts/install.sh), which was -# later released in X11R6 (xc/config/util/install.sh) with the -# following copyright and license. -# -# Copyright (C) 1994 X Consortium -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# -# Except as contained in this notice, the name of the X Consortium shall not -# be used in advertising or otherwise to promote the sale, use or other deal- -# ings in this Software without prior written authorization from the X Consor- -# tium. -# -# -# FSF changes to this file are in the public domain. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# 'make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. - -tab=' ' -nl=' -' -IFS=" $tab$nl" - -# Set DOITPROG to "echo" to test this script. - -doit=${DOITPROG-} -doit_exec=${doit:-exec} - -# Put in absolute file names if you don't have them in your path; -# or use environment vars. - -chgrpprog=${CHGRPPROG-chgrp} -chmodprog=${CHMODPROG-chmod} -chownprog=${CHOWNPROG-chown} -cmpprog=${CMPPROG-cmp} -cpprog=${CPPROG-cp} -mkdirprog=${MKDIRPROG-mkdir} -mvprog=${MVPROG-mv} -rmprog=${RMPROG-rm} -stripprog=${STRIPPROG-strip} - -posix_mkdir= - -# Desired mode of installed file. -mode=0755 - -chgrpcmd= -chmodcmd=$chmodprog -chowncmd= -mvcmd=$mvprog -rmcmd="$rmprog -f" -stripcmd= - -src= -dst= -dir_arg= -dst_arg= - -copy_on_change=false -is_target_a_directory=possibly - -usage="\ -Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE - or: $0 [OPTION]... SRCFILES... DIRECTORY - or: $0 [OPTION]... -t DIRECTORY SRCFILES... - or: $0 [OPTION]... -d DIRECTORIES... - -In the 1st form, copy SRCFILE to DSTFILE. -In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. -In the 4th, create DIRECTORIES. - -Options: - --help display this help and exit. - --version display version info and exit. - - -c (ignored) - -C install only if different (preserve the last data modification time) - -d create directories instead of installing files. - -g GROUP $chgrpprog installed files to GROUP. - -m MODE $chmodprog installed files to MODE. - -o USER $chownprog installed files to USER. - -s $stripprog installed files. - -t DIRECTORY install into DIRECTORY. - -T report an error if DSTFILE is a directory. - -Environment variables override the default commands: - CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG - RMPROG STRIPPROG -" - -while test $# -ne 0; do - case $1 in - -c) ;; - - -C) copy_on_change=true;; - - -d) dir_arg=true;; - - -g) chgrpcmd="$chgrpprog $2" - shift;; - - --help) echo "$usage"; exit $?;; - - -m) mode=$2 - case $mode in - *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) - echo "$0: invalid mode: $mode" >&2 - exit 1;; - esac - shift;; - - -o) chowncmd="$chownprog $2" - shift;; - - -s) stripcmd=$stripprog;; - - -t) - is_target_a_directory=always - dst_arg=$2 - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac - shift;; - - -T) is_target_a_directory=never;; - - --version) echo "$0 $scriptversion"; exit $?;; - - --) shift - break;; - - -*) echo "$0: invalid option: $1" >&2 - exit 1;; - - *) break;; - esac - shift -done - -# We allow the use of options -d and -T together, by making -d -# take the precedence; this is for compatibility with GNU install. - -if test -n "$dir_arg"; then - if test -n "$dst_arg"; then - echo "$0: target directory not allowed when installing a directory." >&2 - exit 1 - fi -fi - -if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then - # When -d is used, all remaining arguments are directories to create. - # When -t is used, the destination is already specified. - # Otherwise, the last argument is the destination. Remove it from $@. - for arg - do - if test -n "$dst_arg"; then - # $@ is not empty: it contains at least $arg. - set fnord "$@" "$dst_arg" - shift # fnord - fi - shift # arg - dst_arg=$arg - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac - done -fi - -if test $# -eq 0; then - if test -z "$dir_arg"; then - echo "$0: no input file specified." >&2 - exit 1 - fi - # It's OK to call 'install-sh -d' without argument. - # This can happen when creating conditional directories. - exit 0 -fi - -if test -z "$dir_arg"; then - if test $# -gt 1 || test "$is_target_a_directory" = always; then - if test ! -d "$dst_arg"; then - echo "$0: $dst_arg: Is not a directory." >&2 - exit 1 - fi - fi -fi - -if test -z "$dir_arg"; then - do_exit='(exit $ret); exit $ret' - trap "ret=129; $do_exit" 1 - trap "ret=130; $do_exit" 2 - trap "ret=141; $do_exit" 13 - trap "ret=143; $do_exit" 15 - - # Set umask so as not to create temps with too-generous modes. - # However, 'strip' requires both read and write access to temps. - case $mode in - # Optimize common cases. - *644) cp_umask=133;; - *755) cp_umask=22;; - - *[0-7]) - if test -z "$stripcmd"; then - u_plus_rw= - else - u_plus_rw='% 200' - fi - cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; - *) - if test -z "$stripcmd"; then - u_plus_rw= - else - u_plus_rw=,u+rw - fi - cp_umask=$mode$u_plus_rw;; - esac -fi - -for src -do - # Protect names problematic for 'test' and other utilities. - case $src in - -* | [=\(\)!]) src=./$src;; - esac - - if test -n "$dir_arg"; then - dst=$src - dstdir=$dst - test -d "$dstdir" - dstdir_status=$? - else - - # Waiting for this to be detected by the "$cpprog $src $dsttmp" command - # might cause directories to be created, which would be especially bad - # if $src (and thus $dsttmp) contains '*'. - if test ! -f "$src" && test ! -d "$src"; then - echo "$0: $src does not exist." >&2 - exit 1 - fi - - if test -z "$dst_arg"; then - echo "$0: no destination specified." >&2 - exit 1 - fi - dst=$dst_arg - - # If destination is a directory, append the input filename; won't work - # if double slashes aren't ignored. - if test -d "$dst"; then - if test "$is_target_a_directory" = never; then - echo "$0: $dst_arg: Is a directory" >&2 - exit 1 - fi - dstdir=$dst - dst=$dstdir/`basename "$src"` - dstdir_status=0 - else - dstdir=`dirname "$dst"` - test -d "$dstdir" - dstdir_status=$? - fi - fi - - obsolete_mkdir_used=false - - if test $dstdir_status != 0; then - case $posix_mkdir in - '') - # Create intermediate dirs using mode 755 as modified by the umask. - # This is like FreeBSD 'install' as of 1997-10-28. - umask=`umask` - case $stripcmd.$umask in - # Optimize common cases. - *[2367][2367]) mkdir_umask=$umask;; - .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; - - *[0-7]) - mkdir_umask=`expr $umask + 22 \ - - $umask % 100 % 40 + $umask % 20 \ - - $umask % 10 % 4 + $umask % 2 - `;; - *) mkdir_umask=$umask,go-w;; - esac - - # With -d, create the new directory with the user-specified mode. - # Otherwise, rely on $mkdir_umask. - if test -n "$dir_arg"; then - mkdir_mode=-m$mode - else - mkdir_mode= - fi - - posix_mkdir=false - case $umask in - *[123567][0-7][0-7]) - # POSIX mkdir -p sets u+wx bits regardless of umask, which - # is incompatible with FreeBSD 'install' when (umask & 300) != 0. - ;; - *) - tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ - trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 - - if (umask $mkdir_umask && - exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 - then - if test -z "$dir_arg" || { - # Check for POSIX incompatibilities with -m. - # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. - # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. - ls_ld_tmpdir=`ls -ld "$tmpdir"` - case $ls_ld_tmpdir in - d????-?r-*) different_mode=700;; - d????-?--*) different_mode=755;; - *) false;; - esac && - $mkdirprog -m$different_mode -p -- "$tmpdir" && { - ls_ld_tmpdir_1=`ls -ld "$tmpdir"` - test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" - } - } - then posix_mkdir=: - fi - rmdir "$tmpdir/d" "$tmpdir" - else - # Remove any dirs left behind by ancient mkdir implementations. - rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null - fi - trap '' 0;; - esac;; - esac - - if - $posix_mkdir && ( - umask $mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" - ) - then : - else - - # The umask is ridiculous, or mkdir does not conform to POSIX, - # or it failed possibly due to a race condition. Create the - # directory the slow way, step by step, checking for races as we go. - - case $dstdir in - /*) prefix='/';; - [-=\(\)!]*) prefix='./';; - *) prefix='';; - esac - - oIFS=$IFS - IFS=/ - set -f - set fnord $dstdir - shift - set +f - IFS=$oIFS - - prefixes= - - for d - do - test X"$d" = X && continue - - prefix=$prefix$d - if test -d "$prefix"; then - prefixes= - else - if $posix_mkdir; then - (umask=$mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break - # Don't fail if two instances are running concurrently. - test -d "$prefix" || exit 1 - else - case $prefix in - *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; - *) qprefix=$prefix;; - esac - prefixes="$prefixes '$qprefix'" - fi - fi - prefix=$prefix/ - done - - if test -n "$prefixes"; then - # Don't fail if two instances are running concurrently. - (umask $mkdir_umask && - eval "\$doit_exec \$mkdirprog $prefixes") || - test -d "$dstdir" || exit 1 - obsolete_mkdir_used=true - fi - fi - fi - - if test -n "$dir_arg"; then - { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && - { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && - { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || - test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 - else - - # Make a couple of temp file names in the proper directory. - dsttmp=$dstdir/_inst.$$_ - rmtmp=$dstdir/_rm.$$_ - - # Trap to clean up those temp files at exit. - trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 - - # Copy the file name to the temp name. - (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && - - # and set any options; do chmod last to preserve setuid bits. - # - # If any of these fail, we abort the whole thing. If we want to - # ignore errors from any of these, just make sure not to ignore - # errors from the above "$doit $cpprog $src $dsttmp" command. - # - { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && - { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && - { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && - { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && - - # If -C, don't bother to copy if it wouldn't change the file. - if $copy_on_change && - old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && - new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && - set -f && - set X $old && old=:$2:$4:$5:$6 && - set X $new && new=:$2:$4:$5:$6 && - set +f && - test "$old" = "$new" && - $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 - then - rm -f "$dsttmp" - else - # Rename the file to the real destination. - $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || - - # The rename failed, perhaps because mv can't rename something else - # to itself, or perhaps because mv is so ancient that it does not - # support -f. - { - # Now remove or move aside any old file at destination location. - # We try this two ways since rm can't unlink itself on some - # systems and the destination file might be busy for other - # reasons. In this case, the final cleanup might fail but the new - # file should still install successfully. - { - test ! -f "$dst" || - $doit $rmcmd -f "$dst" 2>/dev/null || - { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && - { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } - } || - { echo "$0: cannot unlink or rename $dst" >&2 - (exit 1); exit 1 - } - } && - - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dst" - } - fi || exit 1 - - trap '' 0 - fi -done - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" -# time-stamp-end: "; # UTC" -# End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/newt.c new/newt-0.52.21/newt.c --- old/newt-0.52.20/newt.c 2017-03-17 11:36:31.000000000 +0100 +++ new/newt-0.52.21/newt.c 2019-05-27 14:57:40.000000000 +0200 @@ -38,6 +38,7 @@ static int cursorRow, cursorCol; static int cursorOn = 1; +static int noFlowCtrl = 0; static int trashScreen = 0; extern int needResize; @@ -355,7 +356,7 @@ int newtResume(void) { SLsmg_resume_smg (); SLsmg_refresh(); - return SLang_init_tty(0, 0, 0); + return SLang_init_tty(0, noFlowCtrl, 0); } void newtCls(void) { @@ -386,6 +387,7 @@ */ int newtInit(void) { char * MonoValue, * MonoEnv = "NEWT_MONO"; + char * NoFlowCtrlValue, * NoFlowCtrlEnv = "NEWT_NOFLOWCTRL"; const char *lang; int ret; @@ -408,9 +410,13 @@ if ( MonoValue != NULL ) SLtt_Use_Ansi_Colors = 0; + NoFlowCtrlValue = getenv(NoFlowCtrlEnv); + if ( NoFlowCtrlValue != NULL ) + noFlowCtrl = 1; + if ((ret = SLsmg_init_smg()) < 0) return ret; - if ((ret = SLang_init_tty(0, 0, 0)) < 0) + if ((ret = SLang_init_tty(0, noFlowCtrl, 0)) < 0) return ret; initColors(); Binary files old/newt-0.52.20/po/lt.mo and new/newt-0.52.21/po/lt.mo differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/po/lt.po new/newt-0.52.21/po/lt.po --- old/newt-0.52.20/po/lt.po 2017-03-17 11:36:31.000000000 +0100 +++ new/newt-0.52.21/po/lt.po 2019-05-27 14:57:40.000000000 +0200 @@ -15,7 +15,7 @@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: lt\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 or n%100>=20) ? 1 : 2)\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2)\n" "X-Generator: Zanata 3.8.2\n" #: ../dialogboxes.c:49 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/newt-0.52.20/snack.c new/newt-0.52.21/snack.c --- old/newt-0.52.20/snack.c 2017-03-17 11:36:31.000000000 +0100 +++ new/newt-0.52.21/snack.c 2019-05-27 14:57:40.000000000 +0200 @@ -1096,7 +1096,11 @@ { snackWidget *w = (snackWidget *)self; - return Py_BuildValue("i", newtRadioGetCurrent(w->co)); +#if SIZEOF_VOID_P <= SIZEOF_LONG + return Py_BuildValue("l", (long)newtRadioGetCurrent(w->co)); +#else + return Py_BuildValue("L", (long long)newtRadioGetCurrent(w->co)); +#endif } static void widgetDestructor(PyObject * o) {
