[Bug 782560] New: Occasional invalid use of NULL caps in clutter_gst_video_sink_parse_caps

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Fri May 12 14:31:32 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=782560

            Bug ID: 782560
           Summary: Occasional invalid use of NULL caps in
                    clutter_gst_video_sink_parse_caps
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: don't know
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: vincent.penquerch at collabora.co.uk
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

>From time to time, running totem on an otherwise vanilla Ogg/Vorbis/Theora
video will critical due to attempting to intersect caps with NULL.

Command line:
G_DEBUG=fatal_criticals GST_DEBUG_FILE=gst.log GST_DEBUG=6 totem
~/Samples/big_buck_bunny_480p_stereo.ogg

It's racy, so I got this twice in a couple dozen runs. When it happens, it
happens at the start. 


Stack trace:

#0  0x00007f873a19086b in g_logv (breakpoint=1) at gmessages.c:324
#1  0x00007f873a19086b in g_logv (log_domain=0x7f87407e9260
<g_log_domain_gstreamer> "GStreamer", log_level=G_LOG_LEVEL_CRITICAL,
format=<optimized out>, args=args at entry=0x7ffecb75cff0) at gmessages.c:1081
#2  0x00007f873a1909df in g_log (log_domain=<optimized out>,
log_level=log_level at entry=G_LOG_LEVEL_CRITICAL,
format=format at entry=0x7f873a1fff70 "%s: assertion '%s' failed") at
gmessages.c:1119
#3  0x00007f873a190a19 in g_return_if_fail_warning (log_domain=<optimized out>,
pretty_function=pretty_function at entry=0x7f87407eeb00 <__func__.20713>
"gst_caps_intersect_full", expression=expression at entry=0x7f87407ee5ec
"GST_IS_CAPS (caps2)") at gmessages.c:1128
#4  0x00007f874075df78 in gst_caps_intersect_full (caps1=0x5641fcbab050,
caps2=caps2 at entry=0x0, mode=mode at entry=GST_CAPS_INTERSECT_ZIG_ZAG) at
gstcaps.c:1674
#5  0x00007f874075e467 in gst_caps_intersect (caps1=<optimized out>,
caps2=caps2 at entry=0x0) at gstcaps.c:1700
#6  0x00007f8740f5f8f1 in clutter_gst_video_sink_parse_caps (caps=0x0,
sink=0x5641fcb9fb50 [ClutterGstVideoSink], save=save at entry=1) at
./clutter-gst-video-sink.c:1877
#7  0x00007f8740f605a3 in clutter_gst_source_dispatch (source=0x5641fd0e0770,
callback=<optimized out>, user_data=<optimized out>) at
./clutter-gst-video-sink.c:2012
#8  0x00007f873a189e5a in g_main_context_dispatch (context=0x5641fc4fa6e0) at
gmain.c:3154
#9  0x00007f873a189e5a in g_main_context_dispatch
(context=context at entry=0x5641fc4fa6e0) at gmain.c:3769
#10 0x00007f873a18a1f0 in g_main_context_iterate
(context=context at entry=0x5641fc4fa6e0, block=block at entry=1,
dispatch=dispatch at entry=1, self=<optimized out>)
    at gmain.c:3840
#11 0x00007f873a18a29c in g_main_context_iteration (context=0x5641fc4fa6e0,
context at entry=0x0, may_block=may_block at entry=1) at gmain.c:3901
#12 0x00007f873a774a1c in g_application_run (application=0x5641fc4c61a0
[TotemObject], argc=2, argv=0x7ffecb75d608) at gapplication.c:2311
#13 0x00005641fb3ee1b8 in main (argc=2, argv=0x7ffecb75d608) at totem.c:83


(gdb) up 4
#4  0x00007f874075df78 in gst_caps_intersect_full (caps1=0x5641fcbab050,
caps2=caps2 at entry=0x0, mode=mode at entry=GST_CAPS_INTERSECT_ZIG_ZAG) at
gstcaps.c:1674
1674      g_return_val_if_fail (GST_IS_CAPS (caps2), NULL);
(gdb) p caps2
$1 = (GstCaps *) 0x0

(gdb) up 3
#7  0x00007f8740f605a3 in clutter_gst_source_dispatch (source=0x5641fd0e0770,
callback=<optimized out>, user_data=<optimized out>) at
./clutter-gst-video-sink.c:2012
2012          if (!clutter_gst_video_sink_parse_caps (caps, gst_source->sink,
TRUE))
(gdb) print *gst_source->sink
$1 = {parent = {element = {element = {object = {object = {g_type_instance =
{g_class = 0x5641fcbaab50}, ref_count = 8, qdata = 0x0}, lock = {p = 0x0, i =
{0, 0}}, 
          name = 0x5641fcbced80 "cluttergstvideosink0", parent = 0x5641fcf6ed70
[GstBin], Python Exception <class 'TypeError'> iter() returned non-iterator of
type '_iterator': 
flags = 32, control_bindings = 0x0, control_rate = 100000000, 
          last_sync = 18446744073709551615, _gst_reserved = 0x0}, state_lock =
{p = 0x5641fcba7c10, i = {0, 0}}, state_cond = {p = 0x0, i = {5, 0}},
state_cookie = 2, 
        target_state = GST_STATE_PAUSED, current_state = GST_STATE_READY,
next_state = GST_STATE_PAUSED, pending_state = GST_STATE_PAUSED, 
        last_return = GST_STATE_CHANGE_ASYNC, bus = 0x5641fd0b5d80 [GstBus],
clock = 0x0, base_time = 0, start_time = 0, Python Exception <class
'TypeError'> iter() returned non-iterator of type '_iterator': 
numpads = 1, pads = 0x5641fc8a3b40, 
        numsrcpads = 0Python Exception <class 'TypeError'> iter() returned
non-iterator of type '_iterator': 
, srcpads = 0x0, Python Exception <class 'TypeError'> iter() returned
non-iterator of type '_iterator': 
numsinkpads = 1, sinkpads = 0x5641fc8a38a0, pads_cookie = 1, _gst_reserved =
{0x0, 0x0, 0x0, 0x0}}, 
      sinkpad = 0x5641fcba84e0 [GstPad], pad_mode = GST_PAD_MODE_PUSH, offset =
0, can_activate_pull = 0, can_activate_push = 1, preroll_lock = {p = 0x0, i =
{0, 0}}, 
      preroll_cond = {p = 0x0, i = {0, 0}}, eos = 0, need_preroll = 1,
have_preroll = 0, playing_async = 1, have_newsegment = 0, segment = {
        flags = GST_SEGMENT_FLAG_NONE, rate = 1, applied_rate = 1, format =
GST_FORMAT_UNDEFINED, base = 0, offset = 0, start = 0, stop =
18446744073709551615, 
        time = 0, position = 0, duration = 18446744073709551615, _gst_reserved
= {0x0, 0x0, 0x0, 0x0}}, clock_id = 0x0, sync = 1, flushing = 0, running = 0, 
      max_lateness = 20000000, priv = 0x5641fcb9f970, _gst_reserved = {0x0
<repeats 20 times>}}, width = 0, height = 0, priv = 0x5641fcb9f960,
_gst_reserved = {0x0, 
      0x0, 0x0, 0x0}}, priv = 0x5641fcb9f800}


$ totem --version
totem 3.18.1

Gstreamer core and plugins are more or less master as of now.

$ oggz info ~/Samples/big_buck_bunny_480p_stereo.ogg 
Content-Duration: 00:09:56.458

Theora: serialno 0252082401
    14318 packets in 35574 pages, 0.4 packets/page, 1.018% Ogg overhead
    Theora-Version: 3.2.1
    Video-Framerate: 24.000 fps
    Video-Width: 854
    Video-Height: 480

Vorbis: serialno 0531112804
    35978 packets in 3103 pages, 11.6 packets/page, 1.128% Ogg overhead
    Audio-Samplerate: 48000 Hz
    Audio-Channels: 2

-- 
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