[Bug 695203] xvimagesink: crash in gst_xvimagesink_xvimage_put() with HLS bip-bop stream after a while

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Mar 5 06:21:37 PST 2013


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

Wim Taymans <wim.taymans> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |wim.taymans at gmail.com

--- Comment #2 from Wim Taymans <wim.taymans at gmail.com> 2013-03-05 14:21:34 UTC ---
This is my analysis:

1) a buffer is allocated from a pool and contains the memory with the xvimage
2) then the decoder needs to keep a ref to a frame
3) then the decoder wants to write to the buffer -> the buffer is copied
4) to make a buffer copy, a new empty buffer is allocated
5) then the memory is *shared* between the original and the copy
6) now there is a bufferpool buffer A pointing to the xvimage and another
buffer
   B with the same xvimage backed memory, not a problem yet
7) then someone wants to write to buffer A, the buffer is writable but the
memory isn't -> the memory is copied
8) then the memory in A is replaced with the copy <- problem because now A is
supposed to be a bufferpool buffer but without xvimage memory anymore

If at some point then A is used directly in the XvShmPutImage things crash.

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