summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDerek Foreman <derekf@osg.samsung.com>2018-03-09 14:32:20 -0600
committerDerek Foreman <derekf@osg.samsung.com>2018-04-20 13:00:28 -0500
commit1fddfdfaae2d9a09e2b84ac73abd4fec825ea744 (patch)
treee9c628329874b23d733a298cbb312db5387e7f3e
parent52e2ef8b227ec08199c29ff64cbf5fcdd72f1dd5 (diff)
downloadefl-1fddfdfaae2d9a09e2b84ac73abd4fec825ea744.tar.gz
ecore_wl2: Add lock/unlock function pointers to buffers
For backend specific lock/unlock behaviour
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_buffer.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lib/ecore_wl2/ecore_wl2_buffer.c b/src/lib/ecore_wl2/ecore_wl2_buffer.c
index 1db05f1164..7db37035a4 100644
--- a/src/lib/ecore_wl2/ecore_wl2_buffer.c
+++ b/src/lib/ecore_wl2/ecore_wl2_buffer.c
@@ -39,6 +39,8 @@ struct _Buffer_Manager
void *(*map)(Ecore_Wl2_Buffer *buf);
void (*unmap)(Ecore_Wl2_Buffer *buf);
void (*discard)(Ecore_Wl2_Buffer *buf);
+ void (*lock)(Ecore_Wl2_Buffer *buf);
+ void (*unlock)(Ecore_Wl2_Buffer *buf);
void (*manager_destroy)(void);
void *priv;
void *dl_handle;
@@ -667,12 +669,14 @@ ecore_wl2_buffer_discard(Ecore_Wl2_Buffer *buf)
EAPI void
ecore_wl2_buffer_lock(Ecore_Wl2_Buffer *b)
{
+ if (buffer_manager->lock) buffer_manager->lock(b);
b->locked = EINA_TRUE;
}
EAPI void
ecore_wl2_buffer_unlock(Ecore_Wl2_Buffer *b)
{
+ if (buffer_manager->unlock) buffer_manager->unlock(b);
ecore_wl2_buffer_unmap(b);
b->mapping = NULL;
b->locked = EINA_FALSE;