Subject: bug#16223: 24.3.50; Segfault in search.c

From: Eli Zaretskii <[email-masked]>
Date: Mon, 23 Dec 2013 18:18:58 +0200

> From: Nicolas Richard <[email-masked]>
> Date: Mon, 23 Dec 2013 11:13:19 +0100
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x0819efa1 in search_buffer (string=250079329, pos=12554130, pos_byte=12554130, lim=1, lim_byte=1, n=-1, RE=0, trt=140997549, inverse_trt=141883277, posix=false) at search.c:1299
> 1299			  TRANSLATE (translated, trt, c);
[...]
> (gdb) info locals
> temp = 140396312
> str = 0x0
> c = 40

Seems some kind of memory corruption, otherwise I cannot understand
how come translating an opening parenthesis via case translation table
could segfault.

> (gdb) p trt
> $1 = 140997549
> (gdb) xtype
> Lisp_Vectorlike
> PVEC_CHAR_TABLE
> (gdb) p c
> $2 = 40

Can you do this and show the results:

 (gdb) p trt
 (gdb) xchartable