Index: patches/readline-6.3-branch_update-2.patch
===================================================================
--- patches/readline-6.3-branch_update-2.patch	(revision baa85e09c023abe4631490bac7c7ec4caac01e47)
+++ 	(revision )
@@ -1,90 +1,0 @@
-Submitted By: William Harrington (kb0iic at cross-lfs dot org)
-Date: 03-30-2014
-Initial Package Version: 6.3
-Origin: Upstream
-Upstream Status: Applied
-Description: Contains all upstream patches up to 6.3-005
-
-diff -Naur readline-6.3.orig/display.c readline-6.3/display.c
---- readline-6.3.orig/display.c	2013-12-27 12:10:56.000000000 -0600
-+++ readline-6.3/display.c	2014-04-24 20:09:52.659098542 -0500
-@@ -2677,7 +2677,8 @@
- {
-   if (_rl_echoing_p)
-     {
--      _rl_move_vert (_rl_vis_botlin);
-+      if (_rl_vis_botlin > 0)	/* minor optimization plus bug fix */
-+	_rl_move_vert (_rl_vis_botlin);
-       _rl_vis_botlin = 0;
-       fflush (rl_outstream);
-       rl_restart_output (1, 0);
-diff -Naur readline-6.3.orig/readline.c readline-6.3/readline.c
---- readline-6.3.orig/readline.c	2013-10-28 13:58:06.000000000 -0500
-+++ readline-6.3/readline.c	2014-04-24 20:09:49.666544077 -0500
-@@ -744,7 +744,8 @@
-     r = _rl_subseq_result (r, cxt->oldmap, cxt->okey, (cxt->flags & KSEQ_SUBSEQ));
- 
-   RL_CHECK_SIGNALS ();
--  if (r == 0)			/* success! */
-+  /* We only treat values < 0 specially to simulate recursion. */
-+  if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0))	/* success! or failure! */
-     {
-       _rl_keyseq_chain_dispose ();
-       RL_UNSETSTATE (RL_STATE_MULTIKEY);
-@@ -964,7 +965,7 @@
- #if defined (VI_MODE)
-   if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
-       key != ANYOTHERKEY &&
--      rl_key_sequence_length == 1 &&	/* XXX */
-+      _rl_dispatching_keymap == vi_movement_keymap &&
-       _rl_vi_textmod_command (key))
-     _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
- #endif
-diff -Naur readline-6.3.orig/rltypedefs.h readline-6.3/rltypedefs.h
---- readline-6.3.orig/rltypedefs.h	2011-03-26 13:53:31.000000000 -0500
-+++ readline-6.3/rltypedefs.h	2014-04-24 20:09:54.218697974 -0500
-@@ -26,6 +26,25 @@
- extern "C" {
- #endif
- 
-+/* Old-style, attempt to mark as deprecated in some way people will notice. */
-+
-+#if !defined (_FUNCTION_DEF)
-+#  define _FUNCTION_DEF
-+
-+#if defined(__GNUC__) || defined(__clang__)
-+typedef int Function () __attribute__ ((deprecated));
-+typedef void VFunction () __attribute__ ((deprecated));
-+typedef char *CPFunction () __attribute__ ((deprecated));
-+typedef char **CPPFunction () __attribute__ ((deprecated));
-+#else
-+typedef int Function ();
-+typedef void VFunction ();
-+typedef char *CPFunction ();
-+typedef char **CPPFunction ();
-+#endif
-+
-+#endif /* _FUNCTION_DEF */
-+
- /* New style. */
- 
- #if !defined (_RL_FUNCTION_TYPEDEF)
-diff -Naur readline-6.3.orig/util.c readline-6.3/util.c
---- readline-6.3.orig/util.c	2013-09-02 12:36:12.000000000 -0500
-+++ readline-6.3/util.c	2014-04-24 20:09:51.129496698 -0500
-@@ -476,6 +476,7 @@
-   return (strcpy ((char *)xmalloc (1 + (int)strlen (s)), (s)));
- }
- 
-+#if defined (DEBUG)
- #if defined (USE_VARARGS)
- static FILE *_rl_tracefp;
- 
-@@ -538,6 +539,7 @@
-   _rl_tracefp = fp;
- }
- #endif
-+#endif /* DEBUG */
- 
- 
- #if HAVE_DECL_AUDIT_USER_TTY && defined (ENABLE_TTY_AUDIT_SUPPORT)
Index: patches/readline-6.3-branch_update-3.patch
===================================================================
--- patches/readline-6.3-branch_update-3.patch	(revision db083a36e2667cd9cfbd9c9b787ec174aeeed2bf)
+++ patches/readline-6.3-branch_update-3.patch	(revision db083a36e2667cd9cfbd9c9b787ec174aeeed2bf)
@@ -0,0 +1,122 @@
+Submitted By: William Harrington (kb0iic at cross-lfs dot org)
+Date: 05-17-2014
+Initial Package Version: 6.3
+Origin: Upstream
+Upstream Status: Applied
+Description: Contains all upstream patches up to 6.3-006
+
+diff -Naur readline-6.3.orig/display.c readline-6.3/display.c
+--- readline-6.3.orig/display.c	2013-12-27 18:10:56.000000000 +0000
++++ readline-6.3/display.c	2014-05-17 23:40:59.102644473 +0000
+@@ -1637,7 +1637,7 @@
+   /* If we are changing the number of invisible characters in a line, and
+      the spot of first difference is before the end of the invisible chars,
+      lendiff needs to be adjusted. */
+-  if (current_line == 0 && !_rl_horizontal_scroll_mode &&
++  if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */
+       current_invis_chars != visible_wrap_offset)
+     {
+       if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+@@ -1825,8 +1825,13 @@
+ 	      else
+ 		_rl_last_c_pos += bytes_to_insert;
+ 
++	      /* XXX - we only want to do this if we are at the end of the line
++		 so we move there with _rl_move_cursor_relative */
+ 	      if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
+-		goto clear_rest_of_line;
++		{
++		  _rl_move_cursor_relative (ne-new, new);
++		  goto clear_rest_of_line;
++		}
+ 	    }
+ 	}
+       /* Otherwise, print over the existing material. */
+@@ -2677,7 +2682,8 @@
+ {
+   if (_rl_echoing_p)
+     {
+-      _rl_move_vert (_rl_vis_botlin);
++      if (_rl_vis_botlin > 0)	/* minor optimization plus bug fix */
++	_rl_move_vert (_rl_vis_botlin);
+       _rl_vis_botlin = 0;
+       fflush (rl_outstream);
+       rl_restart_output (1, 0);
+diff -Naur readline-6.3.orig/patchlevel readline-6.3/patchlevel
+--- readline-6.3.orig/patchlevel	2013-11-15 13:11:11.000000000 +0000
++++ readline-6.3/patchlevel	2014-05-17 23:40:59.102644473 +0000
+@@ -1,3 +1,3 @@
+ # Do not edit -- exists only for use by patch
+ 
+-5
++6
+diff -Naur readline-6.3.orig/readline.c readline-6.3/readline.c
+--- readline-6.3.orig/readline.c	2013-10-28 18:58:06.000000000 +0000
++++ readline-6.3/readline.c	2014-05-17 23:40:59.092644501 +0000
+@@ -744,7 +744,8 @@
+     r = _rl_subseq_result (r, cxt->oldmap, cxt->okey, (cxt->flags & KSEQ_SUBSEQ));
+ 
+   RL_CHECK_SIGNALS ();
+-  if (r == 0)			/* success! */
++  /* We only treat values < 0 specially to simulate recursion. */
++  if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0))	/* success! or failure! */
+     {
+       _rl_keyseq_chain_dispose ();
+       RL_UNSETSTATE (RL_STATE_MULTIKEY);
+@@ -964,7 +965,7 @@
+ #if defined (VI_MODE)
+   if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
+       key != ANYOTHERKEY &&
+-      rl_key_sequence_length == 1 &&	/* XXX */
++      _rl_dispatching_keymap == vi_movement_keymap &&
+       _rl_vi_textmod_command (key))
+     _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
+ #endif
+diff -Naur readline-6.3.orig/rltypedefs.h readline-6.3/rltypedefs.h
+--- readline-6.3.orig/rltypedefs.h	2011-03-26 18:53:31.000000000 +0000
++++ readline-6.3/rltypedefs.h	2014-05-17 23:40:59.099311149 +0000
+@@ -26,6 +26,25 @@
+ extern "C" {
+ #endif
+ 
++/* Old-style, attempt to mark as deprecated in some way people will notice. */
++
++#if !defined (_FUNCTION_DEF)
++#  define _FUNCTION_DEF
++
++#if defined(__GNUC__) || defined(__clang__)
++typedef int Function () __attribute__ ((deprecated));
++typedef void VFunction () __attribute__ ((deprecated));
++typedef char *CPFunction () __attribute__ ((deprecated));
++typedef char **CPPFunction () __attribute__ ((deprecated));
++#else
++typedef int Function ();
++typedef void VFunction ();
++typedef char *CPFunction ();
++typedef char **CPPFunction ();
++#endif
++
++#endif /* _FUNCTION_DEF */
++
+ /* New style. */
+ 
+ #if !defined (_RL_FUNCTION_TYPEDEF)
+diff -Naur readline-6.3.orig/util.c readline-6.3/util.c
+--- readline-6.3.orig/util.c	2013-09-02 17:36:12.000000000 +0000
++++ readline-6.3/util.c	2014-05-17 23:40:59.095977825 +0000
+@@ -476,6 +476,7 @@
+   return (strcpy ((char *)xmalloc (1 + (int)strlen (s)), (s)));
+ }
+ 
++#if defined (DEBUG)
+ #if defined (USE_VARARGS)
+ static FILE *_rl_tracefp;
+ 
+@@ -538,6 +539,7 @@
+   _rl_tracefp = fp;
+ }
+ #endif
++#endif /* DEBUG */
+ 
+ 
+ #if HAVE_DECL_AUDIT_USER_TTY && defined (ENABLE_TTY_AUDIT_SUPPORT)
