Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: [BUG] sigsegv



Is the info not sufficient? What else could I check?

On Sat, 29 Apr 2023 at 10:52, Sebastian Gniazdowski
<sgniazdowski@xxxxxxxxx> wrote:
>
> It says "incomplete sequence \339"  although egrep $'\330' ~/.zhistory
> doesn't return anything…
>
> (gdb) frame
> #1  0x00007ffff7e1f628 in histwgetfn (pm=0x508f70) at parameter.c:1241
> 1241                addlinknode(l, dupstring(h));
> (gdb) l
> 1236            for (iw = he->nwords - 1; iw >= 0; iw--) {
> 1237                h = he->node.nam + he->words[iw * 2];
> 1238                e = he->node.nam + he->words[iw * 2 + 1];
> 1239                sav = *e;
> 1240                *e = '\0';
> 1241                addlinknode(l, dupstring(h));
> 1242                *e = sav;
> 1243            }
> 1244            he = up_histent(he);
> 1245        }
>
> (gdb) p he->node.nam + he->words[iw*2]
> $31 = 0x7ffff7ae1370 <incomplete sequence \330>
> (gdb) p he->node.nam + he->words[iw*2+1]
> $32 = 0x7ffff7ae1371 ""
> (gdb) p he->node.nam + he->words[(iw-1)*2]
> $33 = 0x7ffff7ae134f ""
> (gdb) p he->node.nam + he->words[(iw-1)*2+1]
> $34 = 0x7ffff7ae1370 <incomplete sequence \330>
>
> I agree that the resilience to incomplete chars should be strengthened.
>
> Is iw the event number?
> (gdb) p iw
> $35 = 51475
>
> Because history 51474 doesn't return any \330 char either:
> 51474  angel open
> 51475  angel open
> 51476  angel open
>
> On Fri, 28 Apr 2023 at 14:22, Peter Stephenson
> <p.w.stephenson@xxxxxxxxxxxx> wrote:
> >
> > > On 28/04/2023 15:13 Sebastian Gniazdowski <sgniazdowski@xxxxxxxxx> wrote:
> > > I'm searching for an empty word, i.e.: I'm just pressing alt-/ right
> > > after the shell has started.
> >
> > The crash is when the shell is putting together what's already in your
> > history into a set of words, so it can use them from completing.  If
> > you look at the string that is being pared in "bufferwords" at the
> > point of the crash, which comes from the history entry "he", you should
> > see a line from your previous command line history.  That's probably
> > causing the shell some problems --- although there's always the
> > possibility it might be a previous history entry that's messed things
> > up, but this is the place to look first.
> >
> > What you're searching for / completing probably isn't all that important.
> >
> > Hmm, come to think of it a bit of safety combined with a DPUTS() might
> > help with both aspects --- I'll see if I've got time for that over
> > the weekend.
> >
> > pws
> >
>
>
> --
> Best regards,
> Sebastian Gniazdowski



-- 
Best regards,
Sebastian Gniazdowski




Messages sorted by: Reverse Date, Date, Thread, Author