From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-004 Signed-off-by: Gustavo Zacarias READLINE PATCH REPORT ===================== Readline-Release: 6.3 Patch-ID: readline63-004 Bug-Reported-by: Egmont Koblinger Bug-Reference-ID: Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00153.html Bug-Description: The signal handling changes to bash and readline (to avoid running any code in a signal handler context) cause the cursor to be placed on the wrong line of a multi-line command after a ^C interrupts editing. Patch (apply with `patch -p0'): *** a/readline-6.3-patched/display.c 2013-12-27 13:10:56.000000000 -0500 --- b/display.c 2014-03-27 11:52:45.000000000 -0400 *************** *** 2678,2682 **** if (_rl_echoing_p) { ! _rl_move_vert (_rl_vis_botlin); _rl_vis_botlin = 0; fflush (rl_outstream); --- 2678,2683 ---- if (_rl_echoing_p) { ! if (_rl_vis_botlin > 0) /* minor optimization plus bug fix */ ! _rl_move_vert (_rl_vis_botlin); _rl_vis_botlin = 0; fflush (rl_outstream); *** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 --- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 *************** *** 1,3 **** # Do not edit -- exists only for use by patch ! 3 --- 1,3 ---- # Do not edit -- exists only for use by patch ! 4