Segfault after Xserver exit

Brian Paul brian.paul at tungstengraphics.com
Wed Aug 22 04:56:42 PDT 2007


On 8/21/07, Lukas Hejtmanek <xhejtman at ics.muni.cz> wrote:
> On Tue, Aug 21, 2007 at 09:45:01PM +0100, Brian Paul wrote:
> > Can you try the following patch which adds some assertions?  It should
> > tell us if we're going out of bounds during visual set-up.
>
> for some reason the assert is optimized out. Do not know why. So I changed
> asserts into ErrorF messages and I got:
> init_visuals: i=0, numvisuals=8
> init_visuals: i=1, numvisuals=8
> init_visuals: i=2, numvisuals=8
> init_visuals: i=3, numvisuals=8
> init_visuals: i=4, numvisuals=8
> init_visuals: i=5, numvisuals=8
> init_visuals: i=6, numvisuals=8
> init_visuals: i=7, numvisuals=8
> init_visuals: screen->numvis=9, screen->base.numvis=8
>
> Is it ok?

No.  It looks like we're putting 8 visuals into the array, but setting
the screen->num_vis field to 9.  Later, when we loop over the visuals
to free them, we're going too far.  At least, that's what I think is
happening - I can't readily test it right now.

Try the attached patch.

-Brian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: glxvisuals.patch
Type: text/x-patch
Size: 1610 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg/attachments/20070822/f464c99a/attachment.bin>


More information about the xorg mailing list