GNOME Bugzilla – Bug 739516
Segfault when controlling gdkpixbufoverlay's offset-x property
Last modified: 2014-11-02 11:01:41 UTC
Backtrace : Program received signal SIGSEGV, Segmentation fault.
+ Trace 234292
Thread 140737226503936 (LWP 30030)
Created attachment 289808 [details] testcase
Created attachment 289809 [details] png resource
Lazar, Do you know what is the value of tmpline? Is it !NULL?
Luis, Trace says "tmpline=tmpline@entry=0x83afd0"
Segfault reproduced with 1.4 stable release.
Reproduced with git master.
this breaks in line gst-libs/gst/video/video-blend.c:106 > r = tmpline[i * 4 + 1]; i (which is a loop from 0 to width ) is out of bounds because for same strange reason width is -21474516.
Must be something the controller does, if line 55 is commented the segfault doesn't happen.
Yes, the controller sets the offset-x to 2147483266. Which is waaay out of the image. Then in gst_video_blend () this happens and makes the src_width a big negative number. > src_width = dest_width - x;
Created attachment 289827 [details] [review] Small fix This is a hacky fix until I understand a bit better what the code intends to do here, and how wacky x offsets should actually be handled. This patch will just not blend the images if this is the case.
https://bugzilla.gnome.org/show_bug.cgi?id=739281 This bug is probably duplicate of the above mentioned bug.. applying the changes from 739281 will fix this i guess can you please verify..
I wrongly understood how the controller works, that value stems from the fact that the controller maps the values to the property range so 1.0 means 2147483647 for offset-x. Should've controlled relative-x instead
*** This bug has been marked as a duplicate of bug 739281 ***