bug-bash
[Top][All Lists]
Advanced

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

Re: bash-4.3_p39 Segfaults in array_flush at array.c:111 after incorrect


From: Chet Ramey
Subject: Re: bash-4.3_p39 Segfaults in array_flush at array.c:111 after incorrect conversion from indexed to associative array
Date: Tue, 18 Aug 2015 10:23:50 -0400
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.0.1

On 8/15/15 9:02 PM, Sergey Tselikh wrote:

> Description:
> An incorrect conversion from indexed to associative array in bash script leads
> bash interpreter to segfault (bash still gives a useful error report in this 
> situation,
> which is good).
> 
> As seen in the output of GDB, bash terminates in array_flush function:
> 
> Core was generated by `../untars/bash-43-39/bash-4.3/root/bin/bash -x repro'.
> Program terminated with signal SIGSEGV, Segmentation fault.
> #0  0x0000000000470879 in array_flush (a=0x19de728) at array.c:111
> 111             for (r = element_forw(a->head); r != a->head; ) {

Thanks for the report.  The problem was incomplete error propagation.  It
will be fixed for the next release of bash.

I've attached a patch for folks to experiment with; your line numbers will
vary wildly.


Chet

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU    chet@case.edu    http://cnswww.cns.cwru.edu/~chet/

Attachment: array-convert-segfault.patch
Description: Source code patch


reply via email to

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