After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 593719 - regression: segfault when using gstrtpbin and certain video codecs
regression: segfault when using gstrtpbin and certain video codecs
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: 0.10.25
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-08-31 20:54 UTC by Tristan Matthews
Modified: 2009-09-01 05:28 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
client test case (1.04 KB, text/x-sh)
2009-08-31 20:54 UTC, Tristan Matthews
Details
server test case (995 bytes, text/x-sh)
2009-08-31 20:54 UTC, Tristan Matthews
Details

Description Tristan Matthews 2009-08-31 20:54:10 UTC
Created attachment 142164 [details]
client test case

When creating two pipelines (one server, one client) I'm getting a segfault on
the client-side. Here is a traceback from gdb:

################################################################################

Program received signal SIGSEGV, Segmentation fault.

Thread 3001011088 (LWP 4782)

  • #0 gst_iterator_new_single
    at gstiterator.c line 724
  • #1 gst_rtp_session_iterate_internal_links
    at gstrtpsession.c line 1312
  • #2 gst_pad_iterate_internal_links
    at gstpad.c line 3179
  • #3 gst_pad_dispatcher
    at gstpad.c line 3473
  • #4 gst_pad_query_default
    at gstpad.c line 3629
  • #5 gst_pad_query
    at gstpad.c line 3545
  • #6 gst_pad_dispatcher
    at gstpad.c line 3488
  • #7 gst_pad_query_default
    at gstpad.c line 3629
  • #8 gst_pad_query
    at gstpad.c line 3545
  • #9 gst_pad_dispatcher
    at gstpad.c line 3488
  • #10 gst_pad_query_default
    at gstpad.c line 3629
  • #11 gst_rtp_jitter_buffer_query
    at gstrtpjitterbuffer.c line 1873
  • #12 gst_pad_query
    at gstpad.c line 3545
  • #13 gst_pad_dispatcher
    at gstpad.c line 3488
  • #14 gst_pad_query_default
    at gstpad.c line 3629
  • #15 gst_pad_query
    at gstpad.c line 3545
  • #16 gst_proxy_pad_do_query
    at gstghostpad.c line 140
  • #17 gst_pad_query
    at gstpad.c line 3545
  • #18 gst_pad_dispatcher
    at gstpad.c line 3488
  • #19 gst_pad_query_default
    at gstpad.c line 3629
  • #20 gst_pad_query
    at gstpad.c line 3545
  • #21 gst_pad_query_convert
    at gstutils.c line 2925
  • #22 gst_pad_query_peer_convert
    at gstutils.c line 2964
  • #23 gst_ffmpegdec_video_frame
    at gstffmpegdec.c line 1819
  • #24 gst_ffmpegdec_frame
    at gstffmpegdec.c line 2132
  • #25 gst_ffmpegdec_chain
    at gstffmpegdec.c line 2546
  • #26 gst_pad_chain_data_unchecked
    at gstpad.c line 4042
  • #27 gst_pad_push_data
    at gstpad.c line 4271
  • #28 gst_base_rtp_depayload_push_full
    at gstbasertpdepayload.c line 520
  • #29 gst_base_rtp_depayload_chain
    at gstbasertpdepayload.c line 349
  • #30 gst_pad_chain_data_unchecked
  • #31 gst_pad_push_data
    at gstpad.c line 4271
  • #32 gst_proxy_pad_do_chain
    at gstghostpad.c line 179
  • #33 gst_pad_chain_data_unchecked
    at gstpad.c line 4042
  • #34 gst_pad_push_data
    at gstpad.c line 4271
  • #35 gst_rtp_pt_demux_chain
    at gstrtpptdemux.c line 389
  • #36 gst_pad_chain_data_unchecked
    at gstpad.c line 4042
  • #37 gst_pad_push_data
    at gstpad.c line 4271
  • #38 gst_rtp_jitter_buffer_loop
    at gstrtpjitterbuffer.c line 1657
  • #39 gst_task_func
    at gsttask.c line 234
  • #40 default_func
    at gsttaskpool.c line 70
  • #41 ??
    from /usr/lib/libglib-2.0.so.0
  • #42 ??
    from /usr/lib/libglib-2.0.so.0
  • #43 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0

###############################################################################

It seems that gst_rtp_session_iterate_internal_links from gstrtpsession is
passing a null ptr (otherpad) to gst_iterator_new_single. I've found this same
issue for h263, h264, and mpeg4.
Comment 1 Tristan Matthews 2009-08-31 20:54:31 UTC
Created attachment 142165 [details]
server test case
Comment 2 Sebastian Dröge (slomo) 2009-09-01 05:28:12 UTC
commit 3eb09dc32b734cbb5d40ff0b58023ecf411455f1
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Tue Sep 1 07:27:25 2009 +0200

    iterator: Fix single iterator for NULL objects and non-GTypeInstance objects
    
    Fixes bug #593719.