summaryrefslogtreecommitdiff
path: root/src/modules/evas/engines/wayland_egl/evas_engine.c
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2016-12-08 09:11:28 -0500
committerChris Michael <cp.michael@samsung.com>2016-12-08 09:11:28 -0500
commit5a0c03ded16df82f9e1be412220f3a7e0edc25cf (patch)
tree2b03231a1902e9fd3105ddedf75d47a16ed79c3e /src/modules/evas/engines/wayland_egl/evas_engine.c
parenta85605553b13696380a1ba7d6740e99312140ac3 (diff)
evas-wayland-egl: Cleanup wayland_egl engine and fix build break
A previous patch to refactor setup stage and reduce complexity actually introduced several build breaks. This patch fixes the build break for wayland-egl. ref 73b308fb66f871b93ef8e324997872e3bf175906 BAD CEDRIC !!!!! Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to 'src/modules/evas/engines/wayland_egl/evas_engine.c')
-rw-r--r--src/modules/evas/engines/wayland_egl/evas_engine.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/modules/evas/engines/wayland_egl/evas_engine.c b/src/modules/evas/engines/wayland_egl/evas_engine.c
index a4687d4..761d3f9 100644
--- a/src/modules/evas/engines/wayland_egl/evas_engine.c
+++ b/src/modules/evas/engines/wayland_egl/evas_engine.c
@@ -608,7 +608,7 @@ eng_setup(void *info, unsigned int w, unsigned int h)
608 glsym_evas_gl_preload_init(); 608 glsym_evas_gl_preload_init();
609 } 609 }
610 610
611 ob = eng_window_new(evas, inf, w, h, swap_mode); 611 ob = eng_window_new(inf, w, h, swap_mode);
612 if (!ob) goto ob_err; 612 if (!ob) goto ob_err;
613 613
614 if (!evas_render_engine_gl_generic_init(&re->generic, ob, 614 if (!evas_render_engine_gl_generic_init(&re->generic, ob,
@@ -633,8 +633,7 @@ eng_setup(void *info, unsigned int w, unsigned int h)
633 w, h)) 633 w, h))
634 { 634 {
635 eng_window_free(ob); 635 eng_window_free(ob);
636 free(re); 636 goto ob_err;
637 return NULL;
638 } 637 }
639 638
640 gl_wins++; 639 gl_wins++;
@@ -662,6 +661,10 @@ eng_setup(void *info, unsigned int w, unsigned int h)
662 eng_window_use(eng_get_ob(re)); 661 eng_window_use(eng_get_ob(re));
663 662
664 return re; 663 return re;
664
665ob_err:
666 free(re);
667 return NULL;
665} 668}
666 669
667static int 670static int
@@ -695,6 +698,8 @@ eng_update(void *data, void *info, unsigned int w, unsigned int h)
695 (ob->info->info.depth != ob->depth) || 698 (ob->info->info.depth != ob->depth) ||
696 (ob->info->info.destination_alpha != ob->alpha)) 699 (ob->info->info.destination_alpha != ob->alpha))
697 { 700 {
701 Render_Engine_Swap_Mode swap_mode = MODE_AUTO;
702
698 gl_wins--; 703 gl_wins--;
699 if (!ob->info->info.wl_display) 704 if (!ob->info->info.wl_display)
700 { 705 {
@@ -703,16 +708,17 @@ eng_update(void *data, void *info, unsigned int w, unsigned int h)
703 goto ob_err; 708 goto ob_err;
704 } 709 }
705 710
706 ob = eng_window_new(evas, inf, w, h, swap_mode); 711 swap_mode = _eng_swap_mode_get();
712 ob = eng_window_new(inf, w, h, swap_mode);
707 if (!ob) goto ob_err; 713 if (!ob) goto ob_err;
708 714
709 eng_window_use(ob); 715 eng_window_use(ob);
710 716
711 evas_render_engine_software_generic_update(&re->generic.software, ob, 717 evas_render_engine_software_generic_update(&re->generic.software,
712 w, h); 718 ob, w, h);
713 gl_wins++; 719 gl_wins++;
714 } 720 }
715 else if ((ob->w != w) || (ob->h != h) || 721 else if ((ob->w != (int)w) || (ob->h != (int)h) ||
716 (ob->info->info.rotation != ob->rot)) 722 (ob->info->info.rotation != ob->rot))
717 { 723 {
718 eng_outbuf_reconfigure(ob, w, h, 724 eng_outbuf_reconfigure(ob, w, h,