]> git.pld-linux.org Git - packages/bash.git/commitdiff
- official patches
authorElan Ruusamäe <glen@pld-linux.org>
Sat, 4 Feb 2006 22:02:08 +0000 (22:02 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    bash31-006 -> 1.1
    bash31-007 -> 1.1

bash31-006 [new file with mode: 0644]
bash31-007 [new file with mode: 0644]

diff --git a/bash31-006 b/bash31-006
new file mode 100644 (file)
index 0000000..8d74993
--- /dev/null
@@ -0,0 +1,58 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release: 3.1
+Patch-ID: bash31-006
+
+Bug-Reported-by: Mike Frysinger <vapier@gentoo.org>
+Bug-Reference-ID: <200601120613.11907.vapier@gentoo.org>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00045.html
+
+Bug-Description:
+
+Under some circumstances, Bash can use an incorrect setting for the flag
+that indicates whether or not the terminal can auto-wrap, resulting in line-
+wrapping errors.
+
+Patch:
+
+*** ../bash-3.1/lib/readline/terminal.c        Sat Nov 12 20:46:54 2005
+--- lib/readline/terminal.c    Tue Jan 31 10:57:54 2006
+***************
+*** 123,127 ****
+  
+  /* Non-zero means the terminal can auto-wrap lines. */
+! int _rl_term_autowrap;
+  
+  /* Non-zero means that this terminal has a meta key. */
+--- 126,130 ----
+  
+  /* Non-zero means the terminal can auto-wrap lines. */
+! int _rl_term_autowrap = -1;
+  
+  /* Non-zero means that this terminal has a meta key. */
+***************
+*** 275,278 ****
+--- 278,284 ----
+       int rows, cols;
+  {
++   if (_rl_term_autowrap == -1)
++     _rl_init_terminal_io (rl_terminal_name);
++ 
+    if (rows > 0)
+      _rl_screenheight = rows;
+*** ../bash-3.1/patchlevel.h   Wed Jul 20 13:58:20 2005
+--- patchlevel.h       Wed Dec  7 13:48:42 2005
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 5
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 6
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/bash31-007 b/bash31-007
new file mode 100644 (file)
index 0000000..6233786
--- /dev/null
@@ -0,0 +1,121 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release: 3.1
+Patch-ID: bash31-007
+
+Bug-Reported-by: Tim Waugh <twaugh@redhat.com>, Laird Breyer <laird@lbreyer.com>
+Bug-Reference-ID: <20060105174434.GY16000@redhat.com>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00009.html
+                  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=347695
+
+Bug-Description:
+
+When the number of saved jobs exceeds the initial size of the jobs array
+(4096 slots), the array must be compacted and reallocated.  An error in
+the code to do that could cause a segmentation fault.
+
+Patch:
+
+*** ../bash-3.1/jobs.c Fri Nov 11 23:13:27 2005
+--- jobs.c     Wed Feb  1 13:55:38 2006
+***************
+*** 845,851 ****
+  {
+    sigset_t set, oset;
+!   int nsize, i, j;
+    JOB **nlist;
+  
+    nsize = ((js.j_njobs + JOB_SLOTS - 1) / JOB_SLOTS);
+    nsize *= JOB_SLOTS;
+--- 888,895 ----
+  {
+    sigset_t set, oset;
+!   int nsize, i, j, ncur, nprev;
+    JOB **nlist;
+  
++   ncur = nprev = NO_JOB;
+    nsize = ((js.j_njobs + JOB_SLOTS - 1) / JOB_SLOTS);
+    nsize *= JOB_SLOTS;
+***************
+*** 855,869 ****
+  
+    BLOCK_CHILD (set, oset);
+!   nlist = (JOB **) xmalloc (nsize * sizeof (JOB *));
+    for (i = j = 0; i < js.j_jobslots; i++)
+      if (jobs[i])
+!       nlist[j++] = jobs[i];
+  
+    js.j_firstj = 0;
+!   js.j_lastj = (j > 0) ? j - 1: 0;
+    js.j_jobslots = nsize;
+  
+!   free (jobs);
+!   jobs = nlist;
+  
+    UNBLOCK_CHILD (oset);
+--- 899,947 ----
+  
+    BLOCK_CHILD (set, oset);
+!   nlist = (js.j_jobslots == nsize) ? jobs : (JOB **) xmalloc (nsize * sizeof (JOB *));
+! 
+    for (i = j = 0; i < js.j_jobslots; i++)
+      if (jobs[i])
+!       {
+!      if (i == js.j_current)
+!        ncur = j;
+!      if (i == js.j_previous)
+!        nprev = j;
+!      nlist[j++] = jobs[i];
+!       }
+! 
+! #if defined (DEBUG)
+!   itrace ("realloc_jobs_list: resize jobs list from %d to %d", js.j_jobslots, nsize);
+!   itrace ("realloc_jobs_list: j_lastj changed from %d to %d", js.j_lastj, (j > 0) ? j - 1 : 0);
+!   itrace ("realloc_jobs_list: j_njobs changed from %d to %d", js.j_njobs, (j > 0) ? j - 1 : 0);
+! #endif
+  
+    js.j_firstj = 0;
+!   js.j_lastj = (j > 0) ? j - 1 : 0;
+!   js.j_njobs = j;
+    js.j_jobslots = nsize;
+  
+!   /* Zero out remaining slots in new jobs list */
+!   for ( ; j < nsize; j++)
+!     nlist[j] = (JOB *)NULL;
+! 
+!   if (jobs != nlist)
+!     {
+!       free (jobs);
+!       jobs = nlist;
+!     }
+! 
+!   if (ncur != NO_JOB)
+!     js.j_current = ncur;
+!   if (nprev != NO_JOB)
+!     js.j_previous = nprev;
+! 
+!   /* Need to reset these */
+!   if (js.j_current == NO_JOB || js.j_previous == NO_JOB || js.j_current > js.j_lastj || js.j_previous > js.j_lastj)
+!     reset_current ();
+! 
+! #ifdef DEBUG
+!   itrace ("realloc_jobs_list: reset js.j_current (%d) and js.j_previous (%d)", js.j_current, js.j_previous);
+! #endif
+  
+    UNBLOCK_CHILD (oset);
+*** ../bash-3.1/patchlevel.h   Wed Jul 20 13:58:20 2005
+--- patchlevel.h       Wed Dec  7 13:48:42 2005
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 6
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 7
+  
+  #endif /* _PATCHLEVEL_H_ */
This page took 0.053898 seconds and 4 git commands to generate.