[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