58 lines
1.7 KiB
Diff
58 lines
1.7 KiB
Diff
|
READLINE PATCH REPORT
|
||
|
=====================
|
||
|
|
||
|
Readline-Release: 7.0
|
||
|
Patch-ID: readline70-001
|
||
|
|
||
|
Bug-Reported-by: Sean Zha <freeman_cha@hotmail.com>
|
||
|
Bug-Reference-ID: <BN3PR01MB13657D9303EB94BF6E54216E8CCA0@BN3PR01MB1365.prod.exchangelabs.com>
|
||
|
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-09/msg00107.html
|
||
|
|
||
|
Bug-Description:
|
||
|
|
||
|
Readline-7.0 changed the way the history list is initially allocated to reduce
|
||
|
the number of reallocations and copies. Users who set the readline
|
||
|
history-size variable to a very large number to essentially unlimit the size
|
||
|
of the history list will get memory allocation errors
|
||
|
|
||
|
Patch (apply with `patch -p0'):
|
||
|
|
||
|
*** ../readline-7.0/history.c 2015-12-28 13:50:31.000000000 -0500
|
||
|
--- history.c 2016-09-30 14:28:40.000000000 -0400
|
||
|
***************
|
||
|
*** 58,61 ****
|
||
|
--- 58,63 ----
|
||
|
#define DEFAULT_HISTORY_INITIAL_SIZE 502
|
||
|
|
||
|
+ #define MAX_HISTORY_INITIAL_SIZE 8192
|
||
|
+
|
||
|
/* The number of slots to increase the_history by. */
|
||
|
#define DEFAULT_HISTORY_GROW_SIZE 50
|
||
|
***************
|
||
|
*** 308,312 ****
|
||
|
{
|
||
|
if (history_stifled && history_max_entries > 0)
|
||
|
! history_size = history_max_entries + 2;
|
||
|
else
|
||
|
history_size = DEFAULT_HISTORY_INITIAL_SIZE;
|
||
|
--- 310,316 ----
|
||
|
{
|
||
|
if (history_stifled && history_max_entries > 0)
|
||
|
! history_size = (history_max_entries > MAX_HISTORY_INITIAL_SIZE)
|
||
|
! ? MAX_HISTORY_INITIAL_SIZE
|
||
|
! : history_max_entries + 2;
|
||
|
else
|
||
|
history_size = DEFAULT_HISTORY_INITIAL_SIZE;
|
||
|
|
||
|
*** ../readline-7.0/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
|