emacs-devel
[Top][All Lists]
Advanced

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

Re: regex.c bug? - Re: HTML Mode and Turkish Locale - Segfault


From: Kenichi Handa
Subject: Re: regex.c bug? - Re: HTML Mode and Turkish Locale - Segfault
Date: Thu, 30 Nov 2006 11:09:57 +0900
User-agent: SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.2 Emacs/22.0.91 (i686-pc-linux-gnu) MULE/5.0 (SAKAKI)

In article <address@hidden>, address@hidden (Cafer Şimşek) writes:

> I'm getting SegFault already.

I've just installed the simlar fix to another place using
SET_LIST_BIT.  So, please try the latest code again.

---
Kenichi Handa
address@hidden

> Program received signal SIGSEGV, Segmentation fault.
> 0x080e400a in re_set_syntax ()
> (gdb)

> I want to help to fix it, so how can I compile Emacs with debug
> symbols?

> Best Regards.

> Stefan Monnier <address@hidden> writes:

>>> In tr_TR.UTF-8, 'I' is translated to #x51051 (U+0131).  But,
>>> it seems that SET_LIST_BIT assumes that the argument is less
>>> than 256 (or 128).  So, I've just installed the following
change.
> >
>>> @@ -2939,7 +2939,8 @@
>>> for (ch = 0; ch < 1 << BYTEWIDTH; ++ch)
>>> {
>>> int translated = TRANSLATE (ch);
>>> -                       if (re_iswctype (btowc (ch), cc))
>>> +                       if (translated < (1 << BYTEWIDTH)
>>> +                           && re_iswctype (btowc (ch), cc))
>>> SET_LIST_BIT (translated);
>>> }
> >
>>> If translated is set to a mutibyte character, I think the
>>> above SET_RANGE_TABLE_WORK_AREA_BIT handles such a case.
> >
>>> Stefan, could you please confirm that my guess above is
>>> correct?
> >
> > That looks correct, yes.  Thank you,
> >
> >
> >         Stefan

> -- 
> maybe you want to lost (lene)

> Cafer 'cfb' Şimşek
> http://cafer.org





reply via email to

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