summaryrefslogtreecommitdiffstats
path: root/source/l/readline/readline-6.3-patches/readline63-008
blob: 691016f7557b4f8be3f514b429fa2151243f90eb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
			   READLINE PATCH REPORT
			   =====================

Readline-Release: 6.3
Patch-ID: readline63-008

Bug-Reported-by:	Jared Yanovich <slovichon@gmail.com>
Bug-Reference-ID:	<20140625225019.GJ17044@nightderanger.psc.edu>
Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00070.html

Bug-Description:

When the readline `revert-all-at-newline' option is set, pressing newline
when the current line is one retrieved from history results in a double free
and a segmentation fault.

Patch (apply with `patch -p0'):

*** ../readline-6.3-patched/misc.c	2012-09-01 18:03:11.000000000 -0400
--- misc.c	2014-06-30 13:41:19.000000000 -0400
***************
*** 462,465 ****
--- 462,466 ----
  	  /* Set up rl_line_buffer and other variables from history entry */
  	  rl_replace_from_history (entry, 0);	/* entry->line is now current */
+ 	  entry->data = 0;			/* entry->data is now current undo list */
  	  /* Undo all changes to this history entry */
  	  while (rl_undo_list)
***************
*** 469,473 ****
  	  FREE (entry->line);
  	  entry->line = savestring (rl_line_buffer);
- 	  entry->data = 0;
  	}
        entry = previous_history ();
--- 470,473 ----
*** ../readline-6.3/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
  
! 7
--- 1,3 ----
  # Do not edit -- exists only for use by patch
  
! 8