[Bug 704801] New: Segfault in gst_value_deserialize

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Jul 24 04:46:08 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=704801
  GStreamer | gstreamer (core) | unspecified

           Summary: Segfault in gst_value_deserialize
    Classification: Platform
           Product: GStreamer
           Version: unspecified
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: gnome at mithis.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


The following Python script segfaults in gst_value_deserialize
```
import gi
gi.require_version('Gst', '1.0')
from gi.repository import Gst

kaps = Gst.structure_from_string('video/x-raw,framerate=(fraction)10/1')
print kaps[0].get_value('rate')

kaps =
Gst.structure_from_string('video/x-raw,format=AYUV,framerate=\(fraction\)10/1,width=100,height=100')
print kaps[0].get_value('rate')
```

```
$ gdb python
GNU gdb (GDB) 7.6-gg12
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux".

<http://wiki/Main/GnuDebugger  FAQ: http://go/gdb  Email: gdb-team  IRC: gdb>
Reading symbols from /usr/bin/python2.7...done.

WARNING: no debugging symbols found in /usr/bin/python2.7.
Either the binary was compiled without debugging information
or the debugging information was removed (e.g., with strip or strip -g).
Debugger capabilities will be very limited.
For further information: http://wiki/Main/GdbFaq#No_debugging_symbols_found

(gdb) run test.py
Starting program: /usr/bin/python2.7 test.py
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/grte/v3/lib64/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff34f323f in gst_value_deserialize (dest=0x7fffffffd3d8, src=0xb513c0
"10/1") at gstvalue.c:5024
5024        len = gst_value_table->len;
(gdb) bt
#0  0x00007ffff34f323f in gst_value_deserialize (dest=0x7fffffffd3d8,
src=0xb513c0 "10/1") at gstvalue.c:5024
#1  0x00007ffff34d5eba in gst_structure_parse_value (str=<optimized out>,
after=0x7fffffffd3f8, value=0x7fffffffd3d8, default_type=<optimized out>)
    at gststructure.c:2227
#2  0x00007ffff34d906c in gst_structure_parse_field (field=0x7fffffffd3d0,
after=<synthetic pointer>, str=0xb513ac "framerate=(fraction)10/1")
    at gststructure.c:2129
#3  priv_gst_structure_parse_fields (str=<optimized out>, end=0x7fffffffd458,
structure=0xb48040) at gststructure.c:2298
#4  0x00007ffff34d91b0 in gst_structure_from_string (string=0x905600
"video/x-raw,framerate=(fraction)10/1", end=0xb30190) at gststructure.c:2371
#5  0x00007ffff4624a14 in ffi_call_unix64 () from
/usr/lib/x86_64-linux-gnu/libffi.so.6
#6  0x00007ffff4624435 in ffi_call () from
/usr/lib/x86_64-linux-gnu/libffi.so.6
#7  0x00007ffff54cca59 in ?? () from /usr/lib/libgirepository-1.0.so.1
#8  0x00007ffff54cde0e in g_function_info_invoke () from
/usr/lib/libgirepository-1.0.so.1
#9  0x00007ffff5731d48 in ?? () from /usr/lib/python2.7/dist-packages/gi/_gi.so
#10 0x000000000046a678 in PyEval_EvalFrameEx ()
#11 0x000000000057bd02 in PyEval_EvalCodeEx ()
#12 0x00000000004667f8 in PyEval_EvalFrameEx ()
#13 0x000000000057bd02 in PyEval_EvalCodeEx ()
#14 0x000000000057c77d in PyRun_FileExFlags ()
#15 0x000000000057e4a1 in PyRun_SimpleFileExFlags ()
#16 0x0000000000512cfd in Py_Main ()
#17 0x00007ffff68cc76d in __libc_start_main (main=0x41ba20 <main>, argc=2,
ubp_av=0x7fffffffdf78, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fffffffdf68) at libc-start.c:226
#18 0x000000000041ba51 in _start ()
(gdb) 
```

Lastest commit
```
commit bfb68443994895a357222c1c11e0625e460dd864
Author: Sebastian Dröge <slomo at circular-chaos.org>
Date:   Wed Jul 24 11:21:27 2013 +0200

    basesink: Don't shadow variables that are set inside our scope and then
used outside our scope

    Fixes uninitialized use of these variables.
```

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