This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [Bug-readline] heap-buffer-overflow in update_line
- From: Chet Ramey <chet dot ramey at case dot edu>
- To: Tom de Vries <tdevries at suse dot de>, bug-readline at gnu dot org
- Cc: chet dot ramey at case dot edu, gdb-patches at sourceware dot org, Pedro Alves <palves at redhat dot com>
- Date: Mon, 20 May 2019 16:14:01 -0400
- Subject: Re: [Bug-readline] heap-buffer-overflow in update_line
- References: <52f237e9-83e8-2a97-4766-e60b867ab914@suse.de> <d29fbf1f-d33e-77f6-90ed-0eb3779a027c@case.edu> <79173bd4-f37e-c137-cf48-187047078bf0@suse.de>
- Reply-to: chet dot ramey at case dot edu
On 5/17/19 10:59 AM, Tom de Vries wrote:
> Either way, I'm open for suggestions that make gdb call
> rl_set_screen_size with legal parameters, and disable features like
> horizontal scrolling to get unformatted output for the testsuite run.
Here's a patch that will prevent the huge values for the screen width from
causing at least one issue with line_size:
*** ../readline-8.0-patched/display.c 2018-09-30 21:37:48.000000000 -0400
--- display.c 2019-05-16 16:50:44.000000000 -0400
***************
*** 604,607 ****
--- 604,610 ----
register int n;
+ if (line_size <= _rl_screenwidth) /* XXX - for gdb */
+ line_size = _rl_screenwidth + 1;
+
if (invisible_line == 0) /* initialize it */
{
You're still going to have to deal with some horizontal scrolling if the
input line gets long enough.
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU chet@case.edu http://tiswww.cwru.edu/~chet/