mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-04 16:39:39 +00:00
miniobject: refuse write when object is shared
In all cases, refuse to write an object when it is shared by more than one object (also when the object was locked before). See https://bugzilla.gnome.org/show_bug.cgi?id=679145
This commit is contained in:
parent
8620352efc
commit
fd23640001
1 changed files with 4 additions and 3 deletions
|
@ -190,10 +190,11 @@ gst_mini_object_lock (GstMiniObject * object, GstLockFlags flags)
|
|||
}
|
||||
|
||||
if (access_mode) {
|
||||
/* shared counter > 1 and write access is not allowed */
|
||||
if (state > SHARE_ONE && access_mode & GST_LOCK_FLAG_WRITE)
|
||||
goto lock_failed;
|
||||
|
||||
if ((state & LOCK_FLAG_MASK) == 0) {
|
||||
/* shared counter > 1 and write access */
|
||||
if (state > SHARE_ONE && access_mode & GST_LOCK_FLAG_WRITE)
|
||||
goto lock_failed;
|
||||
/* nothing mapped, set access_mode */
|
||||
newstate |= access_mode;
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue