summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2014-01-29 15:25:48 +0000
committerChris Michael <cp.michael@samsung.com>2014-01-29 15:27:24 +0000
commitdd93f55773c96ae51d60efafac27cd52550e44ea (patch)
tree02236decba33461616a22ab7568f7f69b45f4715
parentc2e190a8e25eb78ded8fe7abeadd4dac281efa54 (diff)
downloadefl-dd93f55773c96ae51d60efafac27cd52550e44ea.tar.gz
Intialize buffer manager on engine creation
Signed-off-by: Chris Michael <cp.michael@samsung.com>
-rw-r--r--src/modules/evas/engines/drm/evas_engine.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/modules/evas/engines/drm/evas_engine.c b/src/modules/evas/engines/drm/evas_engine.c
index 966695de26..8819344205 100644
--- a/src/modules/evas/engines/drm/evas_engine.c
+++ b/src/modules/evas/engines/drm/evas_engine.c
@@ -229,6 +229,13 @@ eng_setup(Evas *eo_evas, void *einfo)
else try_swap = 1;
}
+ /* ensure the buffer manager has been opened */
+ if (!evas_buffer_manager_open(info->info.fd))
+ {
+ fprintf(stderr, "COULD NOT OPEN BUFFER MANAGER !!!\n");
+ return 0;
+ }
+
if (!(re =
_output_engine_setup(epd->output.w, epd->output.h,
info->info.rotation, info->info.depth,
@@ -574,6 +581,9 @@ module_open(Evas_Module *em)
if (!_evas_module_engine_inherit(&pfunc, "software_generic"))
return 0;
+ /* try to init the buffer manager */
+ if (!evas_buffer_manager_init()) return 0;
+
/* copy base functions from the software_generic engine */
func = pfunc;
@@ -603,6 +613,9 @@ module_open(Evas_Module *em)
static void
module_close(Evas_Module *em EINA_UNUSED)
{
+ /* shutdown the buffer manager */
+ evas_buffer_manager_shutdown();
+
/* if we have the log domain, unregister it */
if (_evas_engine_drm_log_dom > -1)
eina_log_domain_unregister(_evas_engine_drm_log_dom);