gboolean
gst_mini_object_lock (GstMiniObject * object, GstLockFlags flags)
{
- gint access_mode, state, newstate;
+ guint access_mode, state, newstate;
g_return_val_if_fail (object != NULL, FALSE);
g_return_val_if_fail (GST_MINI_OBJECT_IS_LOCKABLE (object), FALSE);
do {
access_mode = flags & FLAG_MASK;
- newstate = state = g_atomic_int_get (&object->lockstate);
+ newstate = state = (guint) g_atomic_int_get (&object->lockstate);
- GST_CAT_TRACE (GST_CAT_LOCKING, "lock %p: state %08x, access_mode %d",
+ GST_CAT_TRACE (GST_CAT_LOCKING, "lock %p: state %08x, access_mode %u",
object, state, access_mode);
if (access_mode & GST_LOCK_FLAG_EXCLUSIVE) {
lock_failed:
{
GST_CAT_DEBUG (GST_CAT_LOCKING,
- "lock failed %p: state %08x, access_mode %d", object, state,
+ "lock failed %p: state %08x, access_mode %u", object, state,
access_mode);
return FALSE;
}
void
gst_mini_object_unlock (GstMiniObject * object, GstLockFlags flags)
{
- gint access_mode, state, newstate;
+ guint access_mode, state, newstate;
g_return_if_fail (object != NULL);
g_return_if_fail (GST_MINI_OBJECT_IS_LOCKABLE (object));
do {
access_mode = flags & FLAG_MASK;
- newstate = state = g_atomic_int_get (&object->lockstate);
+ newstate = state = (guint) g_atomic_int_get (&object->lockstate);
- GST_CAT_TRACE (GST_CAT_LOCKING, "unlock %p: state %08x, access_mode %d",
+ GST_CAT_TRACE (GST_CAT_LOCKING, "unlock %p: state %08x, access_mode %u",
object, state, access_mode);
if (access_mode & GST_LOCK_FLAG_EXCLUSIVE) {
*
* MT safe
*
- * Returns: (transfer full): a mini-object (possibly the same pointer) that
- * is writable.
+ * Returns: (transfer full) (nullable): a writable mini-object (which may or may not be
+ * the same as @mini_object) or %NULL if copying is required but not possible.
*/
GstMiniObject *
gst_mini_object_make_writable (GstMiniObject * mini_object)