[Bug 735952] videorate: GstStructure refcount critical message
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Wed Sep 3 02:43:50 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=735952
GStreamer | gst-plugins-base | 1.4.0
Vineeth <vineeth.tm> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |vineeth.tm at samsung.com
--- Comment #4 from Vineeth <vineeth.tm at samsung.com> 2014-09-03 09:43:46 UTC ---
Hi Robert/Sebastian,
I was able to reproduce the issue with the following launch command
gst-launch-1.0 videotestsrc ! "video/x-raw, width=640, height=480,
format=UYVY,framerate=30/1" ! videorate drop_only=TRUE ! fakesink
in gst_video_rate_transform_caps() function when caps size is 2
the for loop runs twice,
first time the below code gets executed
if (min_num != 0 || min_denom != 1) {
s3 = gst_structure_copy (s);
gst_structure_set (s3, "framerate", GST_TYPE_FRACTION, 0, 1, NULL);
}
and because of that
if (s3 != NULL)
ret = gst_caps_merge_structure (ret, s3);
Now when loop runs the second time, s3 is not getting copied, but
if (s3 != NULL)
ret = gst_caps_merge_structure (ret, s3);
hence it gives critical crash.
when i initialize s3 to NULL in the for loop, the crash does not occur
something like
s1 = gst_structure_copy (s);
s2 = gst_structure_copy (s);
s3 = NULL;
Can you please confirm if this is a proper fix, or is there any other way to
fix the issue.
Regards,
Vineeth
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list