Accepting request 1008385 from Base:System

- Add patch readline82-001 and its signing readline82-001
  * Starting a readline application with an invalid locale
    specification for LC_ALL/LANG/LC_CTYPE can cause it crash on
    the first call to readline.

- Update to final readline-8.2
  r. When replacing a history entry, make sure the existing entry has a non-NULL
     timestamp before copying it; it may have been added by the application, not
     the history library.

- Update to readline-8.2-rc4
  m. Readline now checks for changes to locale settings (LC_ALL/LC_CTYPE/LANG)
     each time it is called, and modifies the appropriate locale-specific display
     and key binding variables when the locale changes.
- Port patch readline-8.2.dif

- Update to readline-8.2-rc2

- use https:// for source urls  
- Update to readline-8.2-rc1

- Update to readline-8.2-beta
  a. There is now an HS_HISTORY_VERSION containing the version number of the
     history library for applications to use.
  b. History expansion better understands multiple history expansions that may
     contain strings that would ordinarily inhibit history expansion (e.g.,
     `abc!$!$').
  c. There is a new framework for readline timeouts, including new public
     functions to set timeouts and query how much time is remaining before a
     timeout hits, and a hook function that can trigger when readline times

OBS-URL: https://build.opensuse.org/request/show/1008385
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/readline?expand=0&rev=13
This commit is contained in:
Richard Brown 2022-10-11 15:59:12 +00:00 committed by Git OBS Bridge
commit 1a0c6090ff
19 changed files with 205 additions and 199 deletions

View File

@ -5,8 +5,8 @@
3 files changed, 47 insertions(+), 13 deletions(-) 3 files changed, 47 insertions(+), 13 deletions(-)
--- lib/readline/bind.c --- lib/readline/bind.c
+++ lib/readline/bind.c 2020-10-12 15:12:54.125334682 +0000 +++ lib/readline/bind.c 2022-04-28 12:11:29.254618915 +0000
@@ -883,6 +883,9 @@ rl_function_of_keyseq_len (const char *k @@ -962,6 +962,9 @@ rl_trim_arg_from_keyseq (const char *key
/* The last key bindings file read. */ /* The last key bindings file read. */
static char *last_readline_init_file = (char *)NULL; static char *last_readline_init_file = (char *)NULL;
@ -16,7 +16,7 @@
/* The file we're currently reading key bindings from. */ /* The file we're currently reading key bindings from. */
static const char *current_readline_init_file; static const char *current_readline_init_file;
static int current_readline_init_include_level; static int current_readline_init_include_level;
@@ -950,11 +953,14 @@ rl_re_read_init_file (int count, int ign @@ -1029,11 +1032,14 @@ rl_re_read_init_file (int count, int ign
return r; return r;
} }
@ -32,7 +32,7 @@
4. /etc/inputrc 4. /etc/inputrc
If the file existed and could be opened and read, 0 is returned, If the file existed and could be opened and read, 0 is returned,
otherwise errno is returned. */ otherwise errno is returned. */
@@ -963,18 +969,39 @@ rl_read_init_file (const char *filename) @@ -1042,18 +1048,39 @@ rl_read_init_file (const char *filename)
{ {
/* Default the filename. */ /* Default the filename. */
if (filename == 0) if (filename == 0)
@ -80,7 +80,7 @@
#if defined (__MSDOS__) #if defined (__MSDOS__)
if (_rl_read_init_file (filename, 0) == 0) if (_rl_read_init_file (filename, 0) == 0)
return 0; return 0;
@@ -1726,7 +1753,14 @@ rl_parse_and_bind (char *string) @@ -1811,7 +1838,14 @@ rl_parse_and_bind (char *string)
rl_macro_bind (seq, &funname[1], _rl_keymap); rl_macro_bind (seq, &funname[1], _rl_keymap);
} }
else else
@ -96,17 +96,17 @@
xfree (seq); xfree (seq);
return 0; return 0;
@@ -1897,7 +1931,6 @@ typedef int _rl_sv_func_t PARAMS((const @@ -1985,7 +2019,6 @@ typedef int _rl_sv_func_t (const char *)
#define V_INT 2
/* Forward declarations */ /* Forward declarations */
-static int sv_bell_style PARAMS((const char *)); static int sv_region_start_color (const char *);
static int sv_combegin PARAMS((const char *)); static int sv_region_end_color (const char *);
static int sv_dispprefix PARAMS((const char *)); -static int sv_bell_style (const char *);
static int sv_compquery PARAMS((const char *)); static int sv_combegin (const char *);
static int sv_dispprefix (const char *);
static int sv_compquery (const char *);
--- lib/readline/doc/rluser.texi --- lib/readline/doc/rluser.texi
+++ lib/readline/doc/rluser.texi 2020-10-12 15:14:44.599242113 +0000 +++ lib/readline/doc/rluser.texi 2022-04-28 12:10:02.600171100 +0000
@@ -349,7 +349,8 @@ file is taken from the value of the envi @@ -350,7 +350,8 @@ file is taken from the value of the envi
@end ifclear @end ifclear
that variable is unset, the default is @file{~/.inputrc}. If that that variable is unset, the default is @file{~/.inputrc}. If that
file does not exist or cannot be read, the ultimate default is file does not exist or cannot be read, the ultimate default is
@ -117,7 +117,7 @@
The @w{@code{bind}} builtin command can also be used to set Readline The @w{@code{bind}} builtin command can also be used to set Readline
keybindings and variables. keybindings and variables.
--- lib/readline/rlconf.h --- lib/readline/rlconf.h
+++ lib/readline/rlconf.h 2020-10-12 15:12:54.125334682 +0000 +++ lib/readline/rlconf.h 2022-04-28 12:10:02.600171100 +0000
@@ -37,7 +37,7 @@ @@ -37,7 +37,7 @@
#define HANDLE_SIGNALS #define HANDLE_SIGNALS

View File

@ -4,7 +4,7 @@
--- lib/readline/bind.c --- lib/readline/bind.c
+++ lib/readline/bind.c 2018-09-20 06:40:06.799183658 +0000 +++ lib/readline/bind.c 2018-09-20 06:40:06.799183658 +0000
@@ -1872,6 +1872,7 @@ static const struct { @@ -1958,6 +1958,7 @@ static const struct {
#if defined (VISIBLE_STATS) #if defined (VISIBLE_STATS)
{ "visible-stats", &rl_visible_stats, 0 }, { "visible-stats", &rl_visible_stats, 0 },
#endif /* VISIBLE_STATS */ #endif /* VISIBLE_STATS */

View File

@ -38,6 +38,6 @@
+#define xrealloc _rl_xrealloc +#define xrealloc _rl_xrealloc
+#define xfree _rl_xfree +#define xfree _rl_xfree
+ +
extern PTR_T xmalloc PARAMS((size_t)); extern PTR_T xmalloc (size_t);
extern PTR_T xrealloc PARAMS((void *, size_t)); extern PTR_T xrealloc (void *, size_t);
extern void xfree PARAMS((void *)); extern void xfree (void *);

View File

@ -5,7 +5,7 @@
--- lib/readline/input.c --- lib/readline/input.c
+++ lib/readline/input.c 2018-11-29 08:29:58.432878428 +0000 +++ lib/readline/input.c 2018-11-29 08:29:58.432878428 +0000
@@ -520,6 +520,8 @@ rl_read_key (void) @@ -799,6 +799,8 @@ rl_read_key (void)
return (c); return (c);
} }
@ -14,7 +14,7 @@
int int
rl_getc (FILE *stream) rl_getc (FILE *stream)
{ {
@@ -561,7 +563,10 @@ rl_getc (FILE *stream) @@ -846,7 +848,10 @@ rl_getc (FILE *stream)
/* If zero characters are returned, then the file that we are /* If zero characters are returned, then the file that we are
reading from is empty! Return EOF in that case. */ reading from is empty! Return EOF in that case. */
if (result == 0) if (result == 0)
@ -28,7 +28,7 @@
if (errno == EINTR) if (errno == EINTR)
--- lib/readline/readline.c --- lib/readline/readline.c
+++ lib/readline/readline.c 2018-11-29 08:29:58.432878428 +0000 +++ lib/readline/readline.c 2018-11-29 08:29:58.432878428 +0000
@@ -538,6 +538,9 @@ _rl_internal_char_cleanup (void) @@ -557,6 +557,9 @@ _rl_internal_char_cleanup (void)
_rl_erase_entire_line (); _rl_erase_entire_line ();
} }
@ -38,7 +38,7 @@
STATIC_CALLBACK int STATIC_CALLBACK int
#if defined (READLINE_CALLBACKS) #if defined (READLINE_CALLBACKS)
readline_internal_char (void) readline_internal_char (void)
@@ -586,6 +589,10 @@ readline_internal_charloop (void) @@ -614,6 +617,10 @@ readline_internal_charloop (void)
c = rl_read_key (); c = rl_read_key ();
RL_UNSETSTATE(RL_STATE_READCMD); RL_UNSETSTATE(RL_STATE_READCMD);

View File

@ -7,7 +7,7 @@ temporary files from public location without O_EXCL (bcn#868822).
--- lib/readline/util.c --- lib/readline/util.c
+++ lib/readline/util.c 2018-09-20 06:47:51.238715688 +0000 +++ lib/readline/util.c 2018-09-20 06:47:51.238715688 +0000
@@ -488,10 +488,12 @@ _rl_trace (va_alist) @@ -489,10 +489,12 @@ _rl_trace (va_alist)
if (_rl_tracefp == 0) if (_rl_tracefp == 0)
_rl_tropen (); _rl_tropen ();
@ -21,7 +21,7 @@ temporary files from public location without O_EXCL (bcn#868822).
va_end (args); va_end (args);
} }
@@ -511,7 +513,7 @@ _rl_tropen (void) @@ -512,7 +514,7 @@ _rl_tropen (void)
#endif #endif
snprintf (fnbuf, sizeof (fnbuf), "%s/rltrace.%ld", x, (long)getpid()); snprintf (fnbuf, sizeof (fnbuf), "%s/rltrace.%ld", x, (long)getpid());
unlink(fnbuf); unlink(fnbuf);
@ -30,7 +30,7 @@ temporary files from public location without O_EXCL (bcn#868822).
return _rl_tracefp != 0; return _rl_tracefp != 0;
} }
@@ -520,7 +522,8 @@ _rl_trclose (void) @@ -521,7 +523,8 @@ _rl_trclose (void)
{ {
int r; int r;

View File

@ -10,7 +10,7 @@ This helps to get /etc/inputrc work for most users.
--- lib/readline/bind.c --- lib/readline/bind.c
+++ lib/readline/bind.c 2019-08-16 08:26:42.327029248 +0000 +++ lib/readline/bind.c 2019-08-16 08:26:42.327029248 +0000
@@ -1228,19 +1228,34 @@ parser_if (char *args) @@ -1313,19 +1313,34 @@ parser_if (char *args)
word in ARGS is the same as the value stored in rl_readline_name. */ word in ARGS is the same as the value stored in rl_readline_name. */
if (rl_terminal_name && _rl_strnicmp (args, "term=", 5) == 0) if (rl_terminal_name && _rl_strnicmp (args, "term=", 5) == 0)
{ {

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f8ceb4ee131e3232226a17f51b164afc46cd0b9e6cef344be87c65962cb82b02
size 2993288

Binary file not shown.

View File

@ -3,15 +3,16 @@
complete.c | 6 +++--- complete.c | 6 +++---
doc/Makefile.in | 2 +- doc/Makefile.in | 2 +-
doc/readline.3 | 11 +++++++++++ doc/readline.3 | 11 +++++++++++
examples/fileman.c | 2 +-
history.h | 1 + history.h | 1 +
readline.c | 7 +++++-- readline.c | 7 +++++--
readline.h | 3 ++- readline.h | 3 ++-
support/shobj-conf | 5 +++-- support/shobj-conf | 5 +++--
8 files changed, 27 insertions(+), 12 deletions(-) 9 files changed, 28 insertions(+), 13 deletions(-)
--- Makefile.in --- Makefile.in
+++ Makefile.in 2020-10-12 15:26:20.198100393 +0000 +++ Makefile.in 2022-04-28 12:16:56.148759888 +0000
@@ -251,10 +251,8 @@ uninstall-pc: @@ -252,10 +252,8 @@ uninstall-pc:
maybe-uninstall-pc: uninstall-pc maybe-uninstall-pc: uninstall-pc
install-static: installdirs $(STATIC_LIBS) install-headers install-doc ${install_examples} install-pc install-static: installdirs $(STATIC_LIBS) install-headers install-doc ${install_examples} install-pc
@ -22,7 +23,7 @@
$(INSTALL_DATA) libhistory.a $(DESTDIR)$(libdir)/libhistory.a $(INSTALL_DATA) libhistory.a $(DESTDIR)$(libdir)/libhistory.a
-test -n "$(RANLIB)" && $(RANLIB) $(DESTDIR)$(libdir)/libhistory.a -test -n "$(RANLIB)" && $(RANLIB) $(DESTDIR)$(libdir)/libhistory.a
@@ -285,7 +283,7 @@ install-doc: installdirs @@ -286,7 +284,7 @@ install-doc: installdirs
$(INSTALL_DATA) $(OTHER_DOCS) $(DESTDIR)$(docdir) $(INSTALL_DATA) $(OTHER_DOCS) $(DESTDIR)$(docdir)
-( if test -d doc ; then \ -( if test -d doc ; then \
cd doc && \ cd doc && \
@ -32,8 +33,8 @@
uninstall-doc: uninstall-doc:
--- complete.c --- complete.c
+++ complete.c 2020-10-12 15:26:20.202100317 +0000 +++ complete.c 2022-04-28 12:16:56.148759888 +0000
@@ -1146,7 +1146,7 @@ _rl_find_completion_word (int *fp, int * @@ -1148,7 +1148,7 @@ _rl_find_completion_word (int *fp, int *
/* We didn't find an unclosed quoted substring upon which to do /* We didn't find an unclosed quoted substring upon which to do
completion, so use the word break characters to find the completion, so use the word break characters to find the
substring on which to complete. */ substring on which to complete. */
@ -42,7 +43,7 @@
{ {
scan = rl_line_buffer[rl_point]; scan = rl_line_buffer[rl_point];
@@ -2214,7 +2214,7 @@ rl_completion_matches (const char *text, @@ -2216,7 +2216,7 @@ rl_completion_matches (const char *text,
match_list = (char **)xmalloc ((match_list_size + 1) * sizeof (char *)); match_list = (char **)xmalloc ((match_list_size + 1) * sizeof (char *));
match_list[1] = (char *)NULL; match_list[1] = (char *)NULL;
@ -51,7 +52,7 @@
{ {
if (RL_SIG_RECEIVED ()) if (RL_SIG_RECEIVED ())
{ {
@@ -2286,7 +2286,7 @@ rl_username_completion_function (const c @@ -2288,7 +2288,7 @@ rl_username_completion_function (const c
} }
#if defined (HAVE_GETPWENT) #if defined (HAVE_GETPWENT)
@ -61,7 +62,7 @@
/* Null usernames should result in all users as possible completions. */ /* Null usernames should result in all users as possible completions. */
if (namelen == 0 || (STREQN (username, entry->pw_name, namelen))) if (namelen == 0 || (STREQN (username, entry->pw_name, namelen)))
--- doc/Makefile.in --- doc/Makefile.in
+++ doc/Makefile.in 2020-10-12 15:26:20.202100317 +0000 +++ doc/Makefile.in 2022-04-28 12:16:56.148759888 +0000
@@ -107,7 +107,7 @@ DIST_DOCS = $(DVIOBJ) $(PSOBJ) $(HTMLOBJ @@ -107,7 +107,7 @@ DIST_DOCS = $(DVIOBJ) $(PSOBJ) $(HTMLOBJ
# $(RM) $@ # $(RM) $@
# -${TEXI2PDF} $< # -${TEXI2PDF} $<
@ -72,7 +73,7 @@
xdist: $(DIST_DOCS) xdist: $(DIST_DOCS)
--- doc/readline.3 --- doc/readline.3
+++ doc/readline.3 2020-10-12 15:26:20.202100317 +0000 +++ doc/readline.3 2022-04-28 12:16:56.148759888 +0000
@@ -119,6 +119,14 @@ environment variable. If that variable @@ -119,6 +119,14 @@ environment variable. If that variable
.IR ~/.inputrc . .IR ~/.inputrc .
If that file does not exist or cannot be read, the ultimate default is If that file does not exist or cannot be read, the ultimate default is
@ -88,7 +89,7 @@
When a program which uses the readline library starts up, the When a program which uses the readline library starts up, the
init file is read, and the key bindings and variables are set. init file is read, and the key bindings and variables are set.
There are only a few basic constructs allowed in the There are only a few basic constructs allowed in the
@@ -1511,6 +1519,9 @@ VI Command Mode functions @@ -1564,6 +1572,9 @@ VI Command Mode functions
.TP .TP
.FN ~/.inputrc .FN ~/.inputrc
Individual \fBreadline\fP initialization file Individual \fBreadline\fP initialization file
@ -98,8 +99,19 @@
.PD .PD
.SH AUTHORS .SH AUTHORS
Brian Fox, Free Software Foundation Brian Fox, Free Software Foundation
--- examples/fileman.c
+++ examples/fileman.c 2022-04-28 12:26:35.022374539 +0000
@@ -377,7 +377,7 @@ com_stat (arg)
printf ("Statistics for `%s':\n", arg);
- printf ("%s has %d link%s, and is %lu byte%s in length.\n",
+ printf ("%s has %lu link%s, and is %lu byte%s in length.\n",
arg,
finfo.st_nlink,
(finfo.st_nlink == 1) ? "" : "s",
--- history.h --- history.h
+++ history.h 2020-10-12 15:26:20.202100317 +0000 +++ history.h 2022-04-28 12:16:56.152759816 +0000
@@ -32,6 +32,7 @@ extern "C" { @@ -32,6 +32,7 @@ extern "C" {
# include "rlstdc.h" # include "rlstdc.h"
# include "rltypedefs.h" # include "rltypedefs.h"
@ -109,8 +121,8 @@
# include <readline/rltypedefs.h> # include <readline/rltypedefs.h>
#endif #endif
--- readline.c --- readline.c
+++ readline.c 2020-10-12 15:26:20.202100317 +0000 +++ readline.c 2022-04-28 12:16:56.152759816 +0000
@@ -879,8 +879,11 @@ _rl_dispatch_subseq (register int key, K @@ -906,8 +906,11 @@ _rl_dispatch_subseq (register int key, K
{ {
/* Special case rl_do_lowercase_version (). */ /* Special case rl_do_lowercase_version (). */
if (func == rl_do_lowercase_version) if (func == rl_do_lowercase_version)
@ -125,7 +137,7 @@
rl_executing_keymap = map; rl_executing_keymap = map;
rl_executing_key = key; rl_executing_key = key;
--- readline.h --- readline.h
+++ readline.h 2020-10-12 15:26:20.202100317 +0000 +++ readline.h 2022-04-28 12:17:48.115828027 +0000
@@ -32,6 +32,7 @@ extern "C" { @@ -32,6 +32,7 @@ extern "C" {
# include "keymaps.h" # include "keymaps.h"
# include "tilde.h" # include "tilde.h"
@ -134,19 +146,19 @@
# include <readline/rlstdc.h> # include <readline/rlstdc.h>
# include <readline/rltypedefs.h> # include <readline/rltypedefs.h>
# include <readline/keymaps.h> # include <readline/keymaps.h>
@@ -487,7 +488,7 @@ extern char *rl_filename_completion_func @@ -496,7 +497,7 @@ extern char *rl_filename_completion_func
extern int rl_completion_mode PARAMS((rl_command_func_t *)); extern int rl_completion_mode (rl_command_func_t *);
-#if 0 -#if 0
+#ifdef OLD_READLINE +#ifdef OLD_READLINE
/* Backwards compatibility (compat.c). These will go away sometime. */ /* Backwards compatibility (compat.c). These will go away sometime. */
extern void free_undo_list PARAMS((void)); extern void free_undo_list (void);
extern int maybe_save_line PARAMS((void)); extern int maybe_save_line (void);
--- support/shobj-conf --- support/shobj-conf
+++ support/shobj-conf 2020-10-12 15:28:41.255437276 +0000 +++ support/shobj-conf 2022-04-28 12:18:35.078985803 +0000
@@ -126,10 +126,11 @@ sunos5*|solaris2*) @@ -126,10 +126,11 @@ sunos5*|solaris2*)
linux*-*|gnu*-*|k*bsd*-gnu-*|freebsd*|dragonfly*) linux*-*|gnu*-*|k*bsd*-gnu-*|midnightbsd*|freebsd*|dragonfly*)
SHOBJ_CFLAGS=-fPIC SHOBJ_CFLAGS=-fPIC
SHOBJ_LD='${CC}' SHOBJ_LD='${CC}'
- SHOBJ_LDFLAGS='-shared -Wl,-soname,$@' - SHOBJ_LDFLAGS='-shared -Wl,-soname,$@'

BIN
readline-8.2.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
readline-8.2.tar.gz.sig Normal file

Binary file not shown.

View File

@ -1,3 +1,92 @@
-------------------------------------------------------------------
Thu Oct 6 11:27:00 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Add patch readline82-001 and its signing readline82-001
* Starting a readline application with an invalid locale
specification for LC_ALL/LANG/LC_CTYPE can cause it crash on
the first call to readline.
-------------------------------------------------------------------
Tue Sep 27 07:25:51 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Update to final readline-8.2
r. When replacing a history entry, make sure the existing entry has a non-NULL
timestamp before copying it; it may have been added by the application, not
the history library.
-------------------------------------------------------------------
Tue Sep 13 06:49:26 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Update to readline-8.2-rc4
m. Readline now checks for changes to locale settings (LC_ALL/LC_CTYPE/LANG)
each time it is called, and modifies the appropriate locale-specific display
and key binding variables when the locale changes.
- Port patch readline-8.2.dif
-------------------------------------------------------------------
Wed Jul 27 12:13:50 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Update to readline-8.2-rc2
-------------------------------------------------------------------
Wed Jun 22 06:44:02 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- use https:// for source urls
- Update to readline-8.2-rc1
-------------------------------------------------------------------
Thu Apr 28 12:07:32 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Update to readline-8.2-beta
a. There is now an HS_HISTORY_VERSION containing the version number of the
history library for applications to use.
b. History expansion better understands multiple history expansions that may
contain strings that would ordinarily inhibit history expansion (e.g.,
`abc!$!$').
c. There is a new framework for readline timeouts, including new public
functions to set timeouts and query how much time is remaining before a
timeout hits, and a hook function that can trigger when readline times
out. There is a new state value to indicate a timeout.
d. Automatically bind termcap key sequences for page-up and page-down to
history-search-backward and history-search-forward, respectively.
e. There is a new `fetch-history' bindable command that retrieves the history
entry corresponding to its numeric argument. Negative arguments count back
from the end of the history.
f. `vi-undo' is now a bindable command.
g. There is a new option: `enable-active-region'. This separates control of
the active region and bracketed-paste. It has the same default value as
bracketed-paste, and enabling bracketed paste enables the active region.
Users can now turn off the active region while leaving bracketed paste
enabled.
h. rl_completer_word_break_characters is now `const char *' like
rl_basic_word_break_characters.
i. Readline looks in $LS_COLORS for a custom filename extension
(*.readline-colored-completion-prefix) and uses that as the default color
for the common prefix displayed when `colored-completion-prefix' is set.
j. Two new bindable string variables: active-region-start-color and
active-region-end-color. The first sets the color used to display the
active region; the second turns it off. If set, these are used in place
of terminal standout mode.
k. New readline state (RL_STATE_EOF) and application-visible variable
(rl_eof_found) to allow applications to detect when readline reads EOF
before calling the deprep-terminal hook.
l. There is a new configuration option: --with-shared-termcap-library, which
forces linking the shared readline library with the shared termcap (or
curses/ncurses/termlib) library so applications don't have to do it.
- Remove upstream patches and their signatures now obsolete
* readline81-001
* readline81-001.sig
* readline81-002
* readline81-002.sig
- Port patches
* readline-5.2-conf.patch
* readline-6.2-metamode.patch
* readline-6.2-xmalloc.dif
* readline-6.3-input.dif
* readline-6.3-rltrace.patch
* readline-7.0-screen.patch
- Port patch readline-8.1.dif and rename it to readline-8.2.dif
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Jan 14 12:03:35 UTC 2022 - Dr. Werner Fink <werner@suse.de> Fri Jan 14 12:03:35 UTC 2022 - Dr. Werner Fink <werner@suse.de>
@ -1687,7 +1776,7 @@ Mon Feb 15 17:24:46 CET 2010 - werner@suse.de
forward all history entries to syslog. forward all history entries to syslog.
* A new variable $BASHOPTS to export shell options settable using `shopt' to * A new variable $BASHOPTS to export shell options settable using `shopt' to
child processes. child processes.
* There is a new confgure option that forces the extglob option to be * There is a new configure option that forces the extglob option to be
enabled by default. enabled by default.
* New variable $BASH_XTRACEFD; when set to an integer bash will write xtrace * New variable $BASH_XTRACEFD; when set to an integer bash will write xtrace
output to that file descriptor. output to that file descriptor.
@ -1719,7 +1808,7 @@ Mon Feb 15 17:24:46 CET 2010 - werner@suse.de
consume key sequences generated by keys like Home and End without having consume key sequences generated by keys like Home and End without having
to bind all keys. to bind all keys.
* New application-settable function: rl_filename_rewrite_hook. Can be used * New application-settable function: rl_filename_rewrite_hook. Can be used
to rewite or modify filenames read from the file system before they are to rewrite or modify filenames read from the file system before they are
compared to the word to be completed. compared to the word to be completed.
* New bindable variable: skip-completed-text, active when completing in the * New bindable variable: skip-completed-text, active when completing in the
middle of a word. If enabled, it means that characters in the completion middle of a word. If enabled, it means that characters in the completion

View File

@ -17,24 +17,24 @@
%define rl_major 8 %define rl_major 8
%define rextend %{nil}
Name: readline Name: readline
Version: 8.1 Version: 8.2
Release: 0 Release: 0
Summary: The readline library Summary: The readline library
License: GPL-3.0-or-later License: GPL-3.0-or-later
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
URL: https://www.gnu.org/software/readline/ URL: https://www.gnu.org/software/readline/
# Git: http://git.savannah.gnu.org/cgit/bash.git # Git: http://git.savannah.gnu.org/cgit/bash.git
Source0: ftp://ftp.gnu.org/gnu/readline/readline-%{version}.tar.gz Source0: https://ftp.gnu.org/gnu/readline/readline-%{version}%{rextend}.tar.gz
Source1: ftp://ftp.gnu.org/gnu/readline/readline-%{version}.tar.gz.sig Source1: https://ftp.gnu.org/gnu/readline/readline-%{version}%{rextend}.tar.gz.sig
Source2: baselibs.conf Source2: baselibs.conf
Source4: https://tiswww.case.edu/php/chet/gpgkey.asc#/%{name}.keyring Source4: https://tiswww.case.edu/php/chet/gpgkey.asc#/%{name}.keyring
# signatures for official patches # signatures for official patches
Source100: readline81-001.sig
Source101: readline81-002.sig
# official patches # official patches
Patch100: readline81-001 Patch101: readline82-001
Patch101: readline81-002 Source101: readline82-001.sig
# local patches # local patches
Patch200: readline-%{version}.dif Patch200: readline-%{version}.dif
Patch201: readline-6.3-input.dif Patch201: readline-6.3-input.dif
@ -103,9 +103,8 @@ This package contains the documentation for using the readline library
as well as programming with the interface of the readline library. as well as programming with the interface of the readline library.
%prep %prep
%setup -q %setup -q -n readline-%{version}%{rextend}
# official patches # official patches
%patch100 -p0
%patch101 -p0 %patch101 -p0
# local patches # local patches
%patch201 -p2 -b .zerotty %patch201 -p2 -b .zerotty
@ -222,6 +221,7 @@ export CC_FOR_BUILD CFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD CFLAGS LDFLAGS CC
%{_includedir}/readline/ %{_includedir}/readline/
%{_libdir}/libhistory.so %{_libdir}/libhistory.so
%{_libdir}/libreadline.so %{_libdir}/libreadline.so
%{_libdir}/pkgconfig/history.pc
%{_libdir}/pkgconfig/readline.pc %{_libdir}/pkgconfig/readline.pc
%files devel-static %files devel-static

View File

@ -1,92 +0,0 @@
READLINE PATCH REPORT
=====================
Readline-Release: 8.1
Patch-ID: readline81-001
Bug-Reported-by: Tom Tromey <tom@tromey.com>
Bug-Reference-ID: <875z3u9fd0.fsf@tromey.com>
Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2021-01/msg00009.html
Bug-Description:
The code to check readline versions in an inputrc file had the sense of the
comparisons reversed.
Patch (apply with `patch -p0'):
*** ../readline-8.1-patched/bind.c 2020-10-26 10:03:14.000000000 -0400
--- bind.c 2021-01-18 16:38:48.000000000 -0500
***************
*** 1235,1239 ****
else if (_rl_strnicmp (args, "version", 7) == 0)
{
! int rlversion, versionarg, op, previ, major, minor;
_rl_parsing_conditionalized_out = 1;
--- 1235,1239 ----
else if (_rl_strnicmp (args, "version", 7) == 0)
{
! int rlversion, versionarg, op, previ, major, minor, opresult;
_rl_parsing_conditionalized_out = 1;
***************
*** 1295,1316 ****
{
case OP_EQ:
! _rl_parsing_conditionalized_out = rlversion == versionarg;
break;
case OP_NE:
! _rl_parsing_conditionalized_out = rlversion != versionarg;
break;
case OP_GT:
! _rl_parsing_conditionalized_out = rlversion > versionarg;
break;
case OP_GE:
! _rl_parsing_conditionalized_out = rlversion >= versionarg;
break;
case OP_LT:
! _rl_parsing_conditionalized_out = rlversion < versionarg;
break;
case OP_LE:
! _rl_parsing_conditionalized_out = rlversion <= versionarg;
break;
}
}
/* Check to see if the first word in ARGS is the same as the
--- 1295,1317 ----
{
case OP_EQ:
! opresult = rlversion == versionarg;
break;
case OP_NE:
! opresult = rlversion != versionarg;
break;
case OP_GT:
! opresult = rlversion > versionarg;
break;
case OP_GE:
! opresult = rlversion >= versionarg;
break;
case OP_LT:
! opresult = rlversion < versionarg;
break;
case OP_LE:
! opresult = rlversion <= versionarg;
break;
}
+ _rl_parsing_conditionalized_out = 1 - opresult;
}
/* Check to see if the first word in ARGS is the same as the
*** ../readline-8.1/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 0
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 1

Binary file not shown.

View File

@ -1,45 +0,0 @@
READLINE PATCH REPORT
=====================
Readline-Release: 8.1
Patch-ID: readline81-002
Bug-Reported-by: Volodymyr Prodan <vovcat@gmail.com>
Bug-Reference-ID:
Bug-Reference-URL: https://savannah.gnu.org/patch/?10076
Bug-Description:
There are some characters (e.g., cyrillic) that can't be displayed using
certain single-byte encodings (e.g., cp1251) because the negative signed
int is interpreted as EOF and not displayed.
Patch (apply with `patch -p0'):
*** ../readline-8.1-patched/display.c 2021-03-16 18:12:20.000000000 -0400
--- display.c 2021-06-07 16:53:08.000000000 -0400
***************
*** 1599,1603 ****
for (cur_face = FACE_NORMAL, i = 0; i < n; i++)
! putc_face (str[i], face[i], &cur_face);
putc_face (EOF, FACE_NORMAL, &cur_face);
}
--- 1599,1603 ----
for (cur_face = FACE_NORMAL, i = 0; i < n; i++)
! putc_face ((unsigned char) str[i], face[i], &cur_face);
putc_face (EOF, FACE_NORMAL, &cur_face);
}
*** ../readline-8.1/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 1
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 2

Binary file not shown.

42
readline82-001 Normal file
View File

@ -0,0 +1,42 @@
READLINE PATCH REPORT
=====================
Readline-Release: 8.2
Patch-ID: readline82-001
Bug-Reported-by: Kan-Ru Chen <koster@debian.org>
Bug-Reference-ID:
Bug-Reference-URL: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1021109
Bug-Description:
Starting a readline application with an invalid locale specification for
LC_ALL/LANG/LC_CTYPE can cause it crash on the first call to readline.
Patch (apply with `patch -p0'):
*** ../readline-8.2-patched/nls.c 2022-08-15 09:38:51.000000000 -0400
--- nls.c 2022-10-05 09:23:22.000000000 -0400
***************
*** 142,145 ****
--- 142,149 ----
lspec = "";
ret = setlocale (LC_CTYPE, lspec); /* ok, since it does not change locale */
+ if (ret == 0 || *ret == 0)
+ ret = setlocale (LC_CTYPE, (char *)NULL);
+ if (ret == 0 || *ret == 0)
+ ret = RL_DEFAULT_LOCALE;
#else
ret = (lspec == 0 || *lspec == 0) ? RL_DEFAULT_LOCALE : lspec;
*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
***************
*** 1,3 ****
# Do not edit -- exists only for use by patch
! 0
--- 1,3 ----
# Do not edit -- exists only for use by patch
! 1

BIN
readline82-001.sig Normal file

Binary file not shown.