Subject: Re: bug#20802: Segfault when showing non-GTK+ tooltip

From: Eli Zaretskii <[email-masked]>
Date: Sat, 13 Jun 2015 13:54:18 +0300

> Date: Sat, 13 Jun 2015 12:25:42 +0200
> From: martin rudalics <[email-masked]>
> CC: [email-masked]
> 
> Below is a bt after setting an invalid background color.  Tooltips are
> shown via ‘x-show-tip’ and the crash triggers after the backtrace buffer
> complaining about the invalid color popped up and I tried to switch to
> another buffer.  I have no idea whether it's the OP's original issue.

Thanks, but I still cannot reproduce this.  (On what OS did you
reproduce it?)  I also see no backtrace buffers, just a silent message
in *Messages* about its being unable to load the bogus color I
specified.  Can you help by showing values of variables involved in
the crash?

> #0  0x00000000006c9b5c in cache_image (f=0x13a7e00, img=0x198ee20) at ../../src/image.c:1775

Is this in v24.5 or in the current master?  If the latter, line 1775
of image.c is this:

	  else if (EQ (ascent, Qcenter))
	    img->ascent = CENTERED_IMAGE_ASCENT;  <<<<<<<<<<<<<

So is value of img a NULL pointer?  (The argument img in the call
above indicates it's non-NULL, but maybe your GDB shows only the value
at entry?)

If it's not NULL, and this is the correct line, then what caused the
crash?

(I'm also puzzled what does this have to do with tooltips, since we
show no images in the tooltips, and customizing faces for the tooltip
frames should not affect showing images in other frames.)

Thanks.