bug-readline
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-readline] Readline-5.2 Official Patch 2


From: Chet Ramey
Subject: [Bug-readline] Readline-5.2 Official Patch 2
Date: Wed, 21 Mar 2007 15:17:32 -0400

                           READLINE PATCH REPORT
                           =====================

Readline-Release: 5.2
Patch-ID: readline52-002

Bug-Reported-by: Magnus Svensson <address@hidden>
Bug-Reference-ID: <address@hidden>
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:

*** ../readline-5.2-patched/display.c   Thu Sep 14 14:20:12 2006
--- 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() \

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                                Live Strong.
Chet Ramey, ITS, CWRU    address@hidden    http://tiswww.tis.case.edu/~chet/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]