e_plane_renderer: don't use tbm_surface_queue func in alloc callback 09/195009/1 accepted/tizen/5.0/unified/20181211.064535 submit/tizen_5.0/20181210.083227
authorChangyeon Lee <cyeon.lee@samsung.com>
Mon, 10 Dec 2018 04:58:34 +0000 (13:58 +0900)
committerChangyeon Lee <cyeon.lee@samsung.com>
Mon, 10 Dec 2018 05:19:29 +0000 (14:19 +0900)
Change-Id: Iaa2361027cc1405e3a9e0ea8de33ee59bbc31186

src/bin/e_plane_renderer.c
src/bin/e_plane_renderer.h

index 581a534..d71fee8 100644 (file)
@@ -2244,9 +2244,9 @@ _e_plane_renderer_surface_queue_recreate_alloc_cb(tbm_surface_queue_h surface_qu
    tbm_surface_info_s info;
    tbm_surface_info_s new_info;
 
-   width = tbm_surface_queue_get_width(surface_queue);
-   height = tbm_surface_queue_get_height(surface_queue);
-   format = tbm_surface_queue_get_format(surface_queue);
+   width = renderer->recreate_info.width;
+   height = renderer->recreate_info.height;
+   format = TBM_FORMAT_ARGB8888;
 
    if (renderer->plane)
      flags = renderer->plane->buffer_flags;
@@ -2321,6 +2321,9 @@ e_plane_renderer_surface_queue_recreate(E_Plane_Renderer *renderer, int width, i
    tqueue = tbm_surface_queue_create(queue_size, width, height, format, buffer_flags);
    EINA_SAFETY_ON_FALSE_RETURN_VAL(tqueue, NULL);
 
+   renderer->recreate_info.width = width;
+   renderer->recreate_info.height = height;
+
    tbm_surface_queue_set_alloc_cb(tqueue, _e_plane_renderer_surface_queue_recreate_alloc_cb,
                                   _e_plane_renderer_surface_queue_recreate_free_cb, renderer);
    _e_plane_renderer_buffer_alloced_reset(renderer);
index a553004..a06b88c 100644 (file)
@@ -60,6 +60,11 @@ struct _E_Plane_Renderer {
    tbm_surface_h       render_dequeued_tsurface;
 
    Eina_Bool           send_dequeue;
+
+   struct {
+      int              width;
+      int              height;
+   } recreate_info;
 };
 
 EINTERN Eina_Bool                  e_plane_renderer_init(void);