summaryrefslogtreecommitdiff
path: root/source/a/bash/bash-4.4-patches/bash44-001
diff options
context:
space:
mode:
Diffstat (limited to 'source/a/bash/bash-4.4-patches/bash44-001')
-rw-r--r--source/a/bash/bash-4.4-patches/bash44-00160
1 files changed, 60 insertions, 0 deletions
diff --git a/source/a/bash/bash-4.4-patches/bash44-001 b/source/a/bash/bash-4.4-patches/bash44-001
new file mode 100644
index 00000000..7b848fee
--- /dev/null
+++ b/source/a/bash/bash-4.4-patches/bash44-001
@@ -0,0 +1,60 @@
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 4.4
+Patch-ID: bash44-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:
+
+Bash-4.4 changed the way the history list is initially allocated to reduce
+the number of reallocations and copies. Users who set HISTSIZE to a very
+large number to essentially unlimit the size of the history list will get
+memory allocation errors
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.4/lib/readline/history.c 2015-12-28 13:50:31.000000000 -0500
+--- lib/readline/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;
+*** ../bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 0
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 1
+
+ #endif /* _PATCHLEVEL_H_ */