[gstreamer-bugs] [Bug 506643] New: crash in fixate_value/gst_value_init_and_copy on empty list GValues
GStreamer (bugzilla.gnome.org)
bugzilla-daemon at bugzilla.gnome.org
Mon Dec 31 17:01:26 PST 2007
If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
http://bugzilla.gnome.org/show_bug.cgi?id=506643
GStreamer | gstreamer (core) | Ver: 0.10.16
Summary: crash in fixate_value/gst_value_init_and_copy on empty
list GValues
Product: GStreamer
Version: 0.10.16
Platform: Other
OS/Version: Linux
Status: UNCONFIRMED
Severity: critical
Priority: Normal
Component: gstreamer (core)
AssignedTo: gstreamer-bugs at lists.sourceforge.net
ReportedBy: qq at kuku.eu.org
QAContact: gstreamer-bugs at lists.sourceforge.net
CC: qq at kuku.eu.org
GNOME version: Unspecified
GNOME milestone: Unspecified
GStreamer fails an assertion and then crashes on the following pipeline:
v4l2src ! fakesink
A relevant fragment of the stack-trace (gstreamer 0.10.16) :
#0 gst_value_init_and_copy (dest=0x7fffd7cc3b90, src=0x0) at gstvalue.c:3216
#1 0x00002ae1d2f4c2e5 in fixate_value (dest=0x7fffd7cc3bf0, src=0x5ba328) at
gstpad.c:2113
#2 0x00002ae1d2f4c36b in gst_pad_default_fixate (field_id=489, value=0x0,
data=0x0) at gstpad.c:2151
#3 0x00002ae1d2f5f7b0 in gst_structure_foreach (structure=0x5bb770,
func=0x2ae1d2f4c330 <gst_pad_default_fixate>,
user_data=0x5bb770) at gststructure.c:914
#4 0x00002ae1d2f4fa0d in gst_pad_fixate_caps (pad=<value optimized out>,
caps=0x54de00) at gstpad.c:2188
And the assertion: gst_value_list_get_value: assertion `index <
gst_value_list_get_size (value)'.
When fixate_value finds a list, it attempts to read its first element, which
doesn't exist. This triggers the assertion failed. Then the NULL value is
passed to gst_value_init_and_copy, which crashes gstreamer. It's quite possible
that the empty list itself is a sign of a problem with the v4l2src, but
gstreamer should survive such problems. Unfortunately I don't really understand
what fixate_value is supposed to do, so I can't fix it myself.
The last line of the debug output confirms that an empty list triggers the bug:
gstv4l2src.c:384:gst_v4l2src_fixate:<v4l2src0> fixating caps video/x-raw-yuv,
format=(fourcc)UYVY, width=(int)640, height=(int)480, framerate=(int){ }
This seems related to the 505799 bug, although I'm not sure if it's the same
problem.
--
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.
You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=506643.
More information about the Gstreamer-bugs
mailing list