[Bug 697236] New: SEGFAULT when chaing state of uvch264src pipeline

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Apr 3 19:22:08 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=697236
  GStreamer | gst-plugins | git

           Summary: SEGFAULT when chaing state of uvch264src pipeline
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: le.businessman at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


Created an attachment (id=240561)
 View: https://bugzilla.gnome.org/attachment.cgi?id=240561
 Review: https://bugzilla.gnome.org/review?bug=697236&attachment=240561

Check if pool is NULL before calling gst_v4l2_buffer_pool_process

To reproduce, run the uvch264 test program, change the state to playing after
hitting capture. 

This bug does not happen every time.

I've attached a patch which fixes the immediate problem of the NULL pointer
access, however I'm not sure if it's the right approach.

Here's the backtrace.

#0  gst_v4l2_buffer_pool_process (pool=0x0, buf=buf at entry=0x8362698) at
gstv4l2bufferpool.c:1073
#1  0xb4481a6e in gst_v4l2src_fill (src=0x81f0270, buf=0x8362698) at
gstv4l2src.c:771
#2  0xb7629d54 in gst_push_src_fill (bsrc=0x81f0270,
offset=18446744073709551615, length=4096, ret=0x8362698) at gstpushsrc.c:169
#3  0xb760d507 in gst_base_src_default_create (src=0x81f0270,
offset=18446744073709551615, size=4096, buffer=0xb30fdfb4)
    at gstbasesrc.c:1434
#4  0xb7629f00 in gst_push_src_create (ret=0xb30fdfb4, length=4096,
offset=18446744073709551615, bsrc=0x81f0270) at gstpushsrc.c:134
#5  gst_push_src_create (bsrc=0x81f0270, offset=18446744073709551615,
length=4096, ret=0xb30fdfb4) at gstpushsrc.c:122
#6  0xb760fe12 in gst_base_src_get_range (src=src at entry=0x81f0270,
offset=18446744073709551615, length=length at entry=4096, 
    buf=buf at entry=0xb30fe084) at gstbasesrc.c:2357
#7  0xb76121ba in gst_base_src_loop (pad=0x81eeaf8) at gstbasesrc.c:2618
#8  0xb7f2cc08 in gst_task_func (task=task at entry=0x8362238) at gsttask.c:316
#9  0xb7f2de48 in default_func (tdata=0x82b82b8, pool=0x8078a98) at
gsttaskpool.c:70
#10 0xb7873ce8 in g_thread_pool_thread_proxy (data=0x809d590) at
/build/buildd/glib2.0-2.34.1/./glib/gthreadpool.c:309
#11 0xb7873303 in g_thread_proxy (data=0x8300f80) at
/build/buildd/glib2.0-2.34.1/./glib/gthread.c:797
#12 0xb77f1d4c in start_thread (arg=0xb30feb40) at pthread_create.c:308
#13 0xb772fd3e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

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