]> git.sesse.net Git - vlc/blobdiff - src/misc/picture_pool.c
messages: split logger initialization in two phases
[vlc] / src / misc / picture_pool.c
index dac7ef67edb86c6f29f83b65d9068922403035db..98e093f130bee4d084ba11327b43baa4599768f8 100644 (file)
@@ -208,8 +208,6 @@ error:
 
 picture_pool_t *picture_pool_Reserve(picture_pool_t *master, unsigned count)
 {
-    assert(master->pic_unlock == NULL);
-
     picture_t *picture[count ? count : 1];
     unsigned i;
 
@@ -330,7 +328,11 @@ unsigned picture_pool_GetSize(const picture_pool_t *pool)
     return pool->picture_count;
 }
 
-bool picture_pool_NeedsLocking(const picture_pool_t *pool)
+void picture_pool_Enum(picture_pool_t *pool, void (*cb)(void *, picture_t *),
+                       void *opaque)
 {
-    return pool->pic_lock != NULL || pool->pic_unlock != NULL;
+    /* NOTE: So far, the pictures table cannot change after the pool is created
+     * so there is no need to lock the pool mutex here. */
+    for (unsigned i = 0; i < pool->picture_count; i++)
+        cb(opaque, pool->picture[i]);
 }