diff options
Diffstat (limited to 'src/lib/ecore_wl2/ecore_wl2_buffer.c')
-rw-r--r-- | src/lib/ecore_wl2/ecore_wl2_buffer.c | 4 |
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 | |||
39 | void *(*map)(Ecore_Wl2_Buffer *buf); | 39 | void *(*map)(Ecore_Wl2_Buffer *buf); |
40 | void (*unmap)(Ecore_Wl2_Buffer *buf); | 40 | void (*unmap)(Ecore_Wl2_Buffer *buf); |
41 | void (*discard)(Ecore_Wl2_Buffer *buf); | 41 | void (*discard)(Ecore_Wl2_Buffer *buf); |
42 | void (*lock)(Ecore_Wl2_Buffer *buf); | ||
43 | void (*unlock)(Ecore_Wl2_Buffer *buf); | ||
42 | void (*manager_destroy)(void); | 44 | void (*manager_destroy)(void); |
43 | void *priv; | 45 | void *priv; |
44 | void *dl_handle; | 46 | void *dl_handle; |
@@ -667,12 +669,14 @@ ecore_wl2_buffer_discard(Ecore_Wl2_Buffer *buf) | |||
667 | EAPI void | 669 | EAPI void |
668 | ecore_wl2_buffer_lock(Ecore_Wl2_Buffer *b) | 670 | ecore_wl2_buffer_lock(Ecore_Wl2_Buffer *b) |
669 | { | 671 | { |
672 | if (buffer_manager->lock) buffer_manager->lock(b); | ||
670 | b->locked = EINA_TRUE; | 673 | b->locked = EINA_TRUE; |
671 | } | 674 | } |
672 | 675 | ||
673 | EAPI void | 676 | EAPI void |
674 | ecore_wl2_buffer_unlock(Ecore_Wl2_Buffer *b) | 677 | ecore_wl2_buffer_unlock(Ecore_Wl2_Buffer *b) |
675 | { | 678 | { |
679 | if (buffer_manager->unlock) buffer_manager->unlock(b); | ||
676 | ecore_wl2_buffer_unmap(b); | 680 | ecore_wl2_buffer_unmap(b); |
677 | b->mapping = NULL; | 681 | b->mapping = NULL; |
678 | b->locked = EINA_FALSE; | 682 | b->locked = EINA_FALSE; |