Search
j0ke.net Open Build Service
>
Projects
>
home:jg
:
playground
>
bash-syslog
> bash32-013
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File bash32-013 of Package bash-syslog
BASH PATCH REPORT ================= Bash-Release: 3.2 Patch-ID: bash32-013 Bug-Reported-by: Magnus Svensson <msvensson@mysql.com> Bug-Reference-ID: <45BDC44D.80609@mysql.com> Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-01/msg00002.html Bug-Description: Readline neglects to reallocate the array it uses to keep track of wrapped screen lines when increasing its size. This will eventually result in segmentation faults when given sufficiently long input. Patch: *** ../bash-3.2-patched/lib/readline/display.c Thu Sep 14 14:20:12 2006 --- lib/readline/display.c Fri Feb 2 20:23:17 2007 *************** *** 561,574 **** --- 561,586 ---- wrap_offset = prompt_invis_chars_first_line = 0; } + #if defined (HANDLE_MULTIBYTE) #define CHECK_INV_LBREAKS() \ do { \ if (newlines >= (inv_lbsize - 2)) \ { \ inv_lbsize *= 2; \ inv_lbreaks = (int *)xrealloc (inv_lbreaks, inv_lbsize * sizeof (int)); \ + _rl_wrapped_line = (int *)xrealloc (_rl_wrapped_line, inv_lbsize * sizeof (int)); \ } \ } while (0) + #else + #define CHECK_INV_LBREAKS() \ + do { \ + if (newlines >= (inv_lbsize - 2)) \ + { \ + inv_lbsize *= 2; \ + inv_lbreaks = (int *)xrealloc (inv_lbreaks, inv_lbsize * sizeof (int)); \ + } \ + } while (0) + #endif /* HANDLE_MULTIBYTE */ #if defined (HANDLE_MULTIBYTE) #define CHECK_LPOS() \ *** ../bash-3.2/patchlevel.h Thu Apr 13 08:31:04 2006 --- patchlevel.h Mon Oct 16 14:22:54 2006 *************** *** 26,30 **** looks for to find the patch level (for the sccs version string). */ ! #define PATCHLEVEL 12 #endif /* _PATCHLEVEL_H_ */ --- 26,30 ---- looks for to find the patch level (for the sccs version string). */ ! #define PATCHLEVEL 13 #endif /* _PATCHLEVEL_H_ */