diff --git a/readline-5.2-conf.patch b/readline-5.2-conf.patch index 4b79e15..9c7dff7 100644 --- a/readline-5.2-conf.patch +++ b/readline-5.2-conf.patch @@ -5,8 +5,8 @@ 3 files changed, 47 insertions(+), 13 deletions(-) --- lib/readline/bind.c -+++ lib/readline/bind.c 2020-10-12 15:12:54.125334682 +0000 -@@ -883,6 +883,9 @@ rl_function_of_keyseq_len (const char *k ++++ lib/readline/bind.c 2022-04-28 12:11:29.254618915 +0000 +@@ -962,6 +962,9 @@ rl_trim_arg_from_keyseq (const char *key /* The last key bindings file read. */ static char *last_readline_init_file = (char *)NULL; @@ -16,7 +16,7 @@ /* The file we're currently reading key bindings from. */ static const char *current_readline_init_file; 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; } @@ -32,7 +32,7 @@ 4. /etc/inputrc If the file existed and could be opened and read, 0 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. */ if (filename == 0) @@ -80,7 +80,7 @@ #if defined (__MSDOS__) if (_rl_read_init_file (filename, 0) == 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); } else @@ -96,17 +96,17 @@ xfree (seq); return 0; -@@ -1897,7 +1931,6 @@ typedef int _rl_sv_func_t PARAMS((const - #define V_INT 2 - +@@ -1985,7 +2019,6 @@ typedef int _rl_sv_func_t (const char *) /* Forward declarations */ --static int sv_bell_style PARAMS((const char *)); - static int sv_combegin PARAMS((const char *)); - static int sv_dispprefix PARAMS((const char *)); - static int sv_compquery PARAMS((const char *)); + static int sv_region_start_color (const char *); + static int sv_region_end_color (const char *); +-static int sv_bell_style (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 2020-10-12 15:14:44.599242113 +0000 -@@ -349,7 +349,8 @@ file is taken from the value of the envi ++++ lib/readline/doc/rluser.texi 2022-04-28 12:10:02.600171100 +0000 +@@ -350,7 +350,8 @@ file is taken from the value of the envi @end ifclear that variable is unset, the default is @file{~/.inputrc}. If that 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 keybindings and variables. --- 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 @@ #define HANDLE_SIGNALS diff --git a/readline-6.2-metamode.patch b/readline-6.2-metamode.patch index 3dd12b9..f5fafe8 100644 --- a/readline-6.2-metamode.patch +++ b/readline-6.2-metamode.patch @@ -4,7 +4,7 @@ --- lib/readline/bind.c +++ 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) { "visible-stats", &rl_visible_stats, 0 }, #endif /* VISIBLE_STATS */ diff --git a/readline-6.2-xmalloc.dif b/readline-6.2-xmalloc.dif index cf8e76e..273177a 100644 --- a/readline-6.2-xmalloc.dif +++ b/readline-6.2-xmalloc.dif @@ -38,6 +38,6 @@ +#define xrealloc _rl_xrealloc +#define xfree _rl_xfree + - extern PTR_T xmalloc PARAMS((size_t)); - extern PTR_T xrealloc PARAMS((void *, size_t)); - extern void xfree PARAMS((void *)); + extern PTR_T xmalloc (size_t); + extern PTR_T xrealloc (void *, size_t); + extern void xfree (void *); diff --git a/readline-6.3-input.dif b/readline-6.3-input.dif index 3e6397f..cfe6a56 100644 --- a/readline-6.3-input.dif +++ b/readline-6.3-input.dif @@ -5,7 +5,7 @@ --- lib/readline/input.c +++ 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); } @@ -14,7 +14,7 @@ int 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 reading from is empty! Return EOF in that case. */ if (result == 0) @@ -28,7 +28,7 @@ if (errno == EINTR) --- lib/readline/readline.c +++ 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 (); } @@ -38,7 +38,7 @@ STATIC_CALLBACK int #if defined (READLINE_CALLBACKS) readline_internal_char (void) -@@ -586,6 +589,10 @@ readline_internal_charloop (void) +@@ -614,6 +617,10 @@ readline_internal_charloop (void) c = rl_read_key (); RL_UNSETSTATE(RL_STATE_READCMD); diff --git a/readline-6.3-rltrace.patch b/readline-6.3-rltrace.patch index 83a30d6..f505254 100644 --- a/readline-6.3-rltrace.patch +++ b/readline-6.3-rltrace.patch @@ -7,7 +7,7 @@ temporary files from public location without O_EXCL (bcn#868822). --- lib/readline/util.c +++ 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) _rl_tropen (); @@ -21,7 +21,7 @@ temporary files from public location without O_EXCL (bcn#868822). va_end (args); } -@@ -511,7 +513,7 @@ _rl_tropen (void) +@@ -512,7 +514,7 @@ _rl_tropen (void) #endif snprintf (fnbuf, sizeof (fnbuf), "%s/rltrace.%ld", x, (long)getpid()); unlink(fnbuf); @@ -30,7 +30,7 @@ temporary files from public location without O_EXCL (bcn#868822). return _rl_tracefp != 0; } -@@ -520,7 +522,8 @@ _rl_trclose (void) +@@ -521,7 +523,8 @@ _rl_trclose (void) { int r; diff --git a/readline-7.0-screen.patch b/readline-7.0-screen.patch index 8705751..46598da 100644 --- a/readline-7.0-screen.patch +++ b/readline-7.0-screen.patch @@ -10,7 +10,7 @@ This helps to get /etc/inputrc work for most users. --- lib/readline/bind.c +++ 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. */ if (rl_terminal_name && _rl_strnicmp (args, "term=", 5) == 0) { diff --git a/readline-8.1.tar.gz b/readline-8.1.tar.gz deleted file mode 100644 index 07f1202..0000000 --- a/readline-8.1.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f8ceb4ee131e3232226a17f51b164afc46cd0b9e6cef344be87c65962cb82b02 -size 2993288 diff --git a/readline-8.1.tar.gz.sig b/readline-8.1.tar.gz.sig deleted file mode 100644 index 07f726a..0000000 Binary files a/readline-8.1.tar.gz.sig and /dev/null differ diff --git a/readline-8.1.dif b/readline-8.2.dif similarity index 74% rename from readline-8.1.dif rename to readline-8.2.dif index b9f7783..8cd021e 100644 --- a/readline-8.1.dif +++ b/readline-8.2.dif @@ -3,15 +3,16 @@ complete.c | 6 +++--- doc/Makefile.in | 2 +- doc/readline.3 | 11 +++++++++++ + examples/fileman.c | 2 +- history.h | 1 + readline.c | 7 +++++-- readline.h | 3 ++- support/shobj-conf | 5 +++-- - 8 files changed, 27 insertions(+), 12 deletions(-) + 9 files changed, 28 insertions(+), 13 deletions(-) --- Makefile.in -+++ Makefile.in 2020-10-12 15:26:20.198100393 +0000 -@@ -251,10 +251,8 @@ uninstall-pc: ++++ Makefile.in 2022-04-28 12:16:56.148759888 +0000 +@@ -252,10 +252,8 @@ uninstall-pc: maybe-uninstall-pc: uninstall-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 -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) -( if test -d doc ; then \ cd doc && \ @@ -32,8 +33,8 @@ uninstall-doc: --- complete.c -+++ complete.c 2020-10-12 15:26:20.202100317 +0000 -@@ -1146,7 +1146,7 @@ _rl_find_completion_word (int *fp, int * ++++ complete.c 2022-04-28 12:16:56.148759888 +0000 +@@ -1148,7 +1148,7 @@ _rl_find_completion_word (int *fp, int * /* We didn't find an unclosed quoted substring upon which to do completion, so use the word break characters to find the substring on which to complete. */ @@ -42,7 +43,7 @@ { 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[1] = (char *)NULL; @@ -51,7 +52,7 @@ { 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) @@ -61,7 +62,7 @@ /* Null usernames should result in all users as possible completions. */ if (namelen == 0 || (STREQN (username, entry->pw_name, namelen))) --- 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 # $(RM) $@ # -${TEXI2PDF} $< @@ -72,7 +73,7 @@ xdist: $(DIST_DOCS) --- 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 .IR ~/.inputrc . 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 init file is read, and the key bindings and variables are set. 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 .FN ~/.inputrc Individual \fBreadline\fP initialization file @@ -98,8 +99,19 @@ .PD .SH AUTHORS 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 2020-10-12 15:26:20.202100317 +0000 ++++ history.h 2022-04-28 12:16:56.152759816 +0000 @@ -32,6 +32,7 @@ extern "C" { # include "rlstdc.h" # include "rltypedefs.h" @@ -109,8 +121,8 @@ # include #endif --- readline.c -+++ readline.c 2020-10-12 15:26:20.202100317 +0000 -@@ -879,8 +879,11 @@ _rl_dispatch_subseq (register int key, K ++++ readline.c 2022-04-28 12:16:56.152759816 +0000 +@@ -906,8 +906,11 @@ _rl_dispatch_subseq (register int key, K { /* Special case rl_do_lowercase_version (). */ if (func == rl_do_lowercase_version) @@ -125,7 +137,7 @@ rl_executing_keymap = map; rl_executing_key = key; --- 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" { # include "keymaps.h" # include "tilde.h" @@ -134,19 +146,19 @@ # include # include # include -@@ -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 +#ifdef OLD_READLINE /* Backwards compatibility (compat.c). These will go away sometime. */ - extern void free_undo_list PARAMS((void)); - extern int maybe_save_line PARAMS((void)); + extern void free_undo_list (void); + extern int maybe_save_line (void); --- 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*) - linux*-*|gnu*-*|k*bsd*-gnu-*|freebsd*|dragonfly*) + linux*-*|gnu*-*|k*bsd*-gnu-*|midnightbsd*|freebsd*|dragonfly*) SHOBJ_CFLAGS=-fPIC SHOBJ_LD='${CC}' - SHOBJ_LDFLAGS='-shared -Wl,-soname,$@' diff --git a/readline-8.2.tar.gz b/readline-8.2.tar.gz new file mode 100644 index 0000000..349d167 --- /dev/null +++ b/readline-8.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3feb7171f16a84ee82ca18a36d7b9be109a52c04f492a053331d7d1095007c35 +size 3043952 diff --git a/readline-8.2.tar.gz.sig b/readline-8.2.tar.gz.sig new file mode 100644 index 0000000..712e1b1 Binary files /dev/null and b/readline-8.2.tar.gz.sig differ diff --git a/readline.changes b/readline.changes index 6deb4d2..352a9ce 100644 --- a/readline.changes +++ b/readline.changes @@ -1,3 +1,92 @@ +------------------------------------------------------------------- +Thu Oct 6 11:27:00 UTC 2022 - Dr. Werner Fink + +- 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 + +- 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 + +- 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 + +- Update to readline-8.2-rc2 + +------------------------------------------------------------------- +Wed Jun 22 06:44:02 UTC 2022 - Dr. Werner Fink + +- use https:// for source urls +- Update to readline-8.2-rc1 + +------------------------------------------------------------------- +Thu Apr 28 12:07:32 UTC 2022 - Dr. Werner Fink + +- 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 @@ -1687,7 +1776,7 @@ Mon Feb 15 17:24:46 CET 2010 - werner@suse.de forward all history entries to syslog. * A new variable $BASHOPTS to export shell options settable using `shopt' to 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. * New variable $BASH_XTRACEFD; when set to an integer bash will write xtrace 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 to bind all keys. * 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. * New bindable variable: skip-completed-text, active when completing in the middle of a word. If enabled, it means that characters in the completion diff --git a/readline.spec b/readline.spec index 4104635..b9db501 100644 --- a/readline.spec +++ b/readline.spec @@ -17,24 +17,24 @@ %define rl_major 8 +%define rextend %{nil} + Name: readline -Version: 8.1 +Version: 8.2 Release: 0 Summary: The readline library License: GPL-3.0-or-later Group: Development/Libraries/C and C++ URL: https://www.gnu.org/software/readline/ # Git: http://git.savannah.gnu.org/cgit/bash.git -Source0: ftp://ftp.gnu.org/gnu/readline/readline-%{version}.tar.gz -Source1: ftp://ftp.gnu.org/gnu/readline/readline-%{version}.tar.gz.sig +Source0: https://ftp.gnu.org/gnu/readline/readline-%{version}%{rextend}.tar.gz +Source1: https://ftp.gnu.org/gnu/readline/readline-%{version}%{rextend}.tar.gz.sig Source2: baselibs.conf Source4: https://tiswww.case.edu/php/chet/gpgkey.asc#/%{name}.keyring # signatures for official patches -Source100: readline81-001.sig -Source101: readline81-002.sig # official patches -Patch100: readline81-001 -Patch101: readline81-002 +Patch101: readline82-001 +Source101: readline82-001.sig # local patches Patch200: readline-%{version}.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. %prep -%setup -q +%setup -q -n readline-%{version}%{rextend} # official patches -%patch100 -p0 %patch101 -p0 # local patches %patch201 -p2 -b .zerotty @@ -222,6 +221,7 @@ export CC_FOR_BUILD CFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD CFLAGS LDFLAGS CC %{_includedir}/readline/ %{_libdir}/libhistory.so %{_libdir}/libreadline.so +%{_libdir}/pkgconfig/history.pc %{_libdir}/pkgconfig/readline.pc %files devel-static diff --git a/readline81-001 b/readline81-001 deleted file mode 100644 index c393c12..0000000 --- a/readline81-001 +++ /dev/null @@ -1,92 +0,0 @@ - READLINE PATCH REPORT - ===================== - -Readline-Release: 8.1 -Patch-ID: readline81-001 - -Bug-Reported-by: Tom Tromey -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 diff --git a/readline81-001.sig b/readline81-001.sig deleted file mode 100644 index 4f426a2..0000000 Binary files a/readline81-001.sig and /dev/null differ diff --git a/readline81-002 b/readline81-002 deleted file mode 100644 index 21434ef..0000000 --- a/readline81-002 +++ /dev/null @@ -1,45 +0,0 @@ - READLINE PATCH REPORT - ===================== - -Readline-Release: 8.1 -Patch-ID: readline81-002 - -Bug-Reported-by: Volodymyr Prodan -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 diff --git a/readline81-002.sig b/readline81-002.sig deleted file mode 100644 index f4e186e..0000000 Binary files a/readline81-002.sig and /dev/null differ diff --git a/readline82-001 b/readline82-001 new file mode 100644 index 0000000..0f684af --- /dev/null +++ b/readline82-001 @@ -0,0 +1,42 @@ + READLINE PATCH REPORT + ===================== + +Readline-Release: 8.2 +Patch-ID: readline82-001 + +Bug-Reported-by: Kan-Ru Chen +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 diff --git a/readline82-001.sig b/readline82-001.sig new file mode 100644 index 0000000..2977545 Binary files /dev/null and b/readline82-001.sig differ