			   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
			   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
