bug-readline
[Top][All Lists]
Advanced

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

Re: [Bug-readline] SIGSEGV in _rl_dispatch_callback()


From: Chet Ramey
Subject: Re: [Bug-readline] SIGSEGV in _rl_dispatch_callback()
Date: Mon, 10 Mar 2014 21:35:37 -0400
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.3.0

On 3/10/14, 5:23 PM, Anatol Pomozov wrote:

> Then I tried to find why r is 1. Here is the session
> https://gist.githubusercontent.com/anatol/9474427/raw/362de60a2dc75cc53f9650d7cbead2e1370c773c/where_from_1_comes
> 
> This value comes from
> 
>  if ((cxt->flags & KSEQ_DISPATCHED) == 0)
>     {
>       nkey = _rl_subseq_getchar (cxt->okey);
>       if (nkey < 0)
>         {
>           _rl_abort_internal ();
>           return -1;
>         }
>       r = _rl_dispatch_subseq (nkey, cxt->dmap, cxt->subseq_arg);
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>       cxt->flags |= KSEQ_DISPATCHED;
>     }
> 
> 
> 
> That itself comes from
>           r = (*func) (rl_numeric_arg * rl_arg_sign, key);
> 
> it is rl_history_search_forward (count=1, ignore=66)
> it calls rl_history_search_internal (count=1, dir=1)

Thanks, this solves the mystery.  That is not the default function bound
to the up-arrow key (the default is "get-previous-history").  That's why
I was not able to reproduce it: either ipython, the python core, or your
inputrc must have changed the key binding.

I've attached a new patch that should solve all of these problems.  Please
let me know how it works for you.

Chet


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

Attachment: readline-dispatch-multikey.patch
Description: Text Data


reply via email to

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