e_comp_wl_capture: fix bug for handling size of the captured child 74/314174/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Sun, 7 Jul 2024 01:49:25 +0000 (10:49 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Sun, 7 Jul 2024 02:29:06 +0000 (11:29 +0900)
Change-Id: Ie5513cc49db6ee0200a4b6bf905e3da39f47e962

src/bin/e_comp_wl_capture.c

index eba2583..8dfceda 100644 (file)
@@ -1196,8 +1196,6 @@ _e_capture_client_child_data_create(Thread_Data *td, E_Client *ec)
 
    capture_data->x = ec->x;
    capture_data->y = ec->y;
-   capture_data->w = ec->w;
-   capture_data->h = ec->h;
 
    capture_data->transform = e_comp_wl_output_buffer_transform_get(ec);
 
@@ -1225,6 +1223,8 @@ _e_capture_client_child_data_create(Thread_Data *td, E_Client *ec)
          capture_data->shm_buffer_stride = shm_buffer_stride;
          capture_data->shm_buffer_h = shm_buffer_h;
          capture_data->shm_pool = shm_pool;
+         capture_data->w = capture_data->shm_buffer_stride / 4;
+         capture_data->h = capture_data->shm_buffer_h;
          break;
 
       case E_COMP_WL_BUFFER_TYPE_NATIVE:
@@ -1234,6 +1234,9 @@ _e_capture_client_child_data_create(Thread_Data *td, E_Client *ec)
 
          capture_data->tbm_surface = e_comp_wl_tbm_capturable_buffer_get(tbm_surface);
          if (!capture_data->tbm_surface) goto end;
+
+         capture_data->w = tbm_surface_get_width(capture_data->tbm_surface);
+         capture_data->h = tbm_surface_get_height(capture_data->tbm_surface);
          break;
 
       case E_COMP_WL_BUFFER_TYPE_TBM:
@@ -1242,6 +1245,9 @@ _e_capture_client_child_data_create(Thread_Data *td, E_Client *ec)
 
          capture_data->tbm_surface = e_comp_wl_tbm_capturable_buffer_get(tbm_surface);
          if (!capture_data->tbm_surface) goto end;
+
+         capture_data->w = tbm_surface_get_width(capture_data->tbm_surface);
+         capture_data->h = tbm_surface_get_height(capture_data->tbm_surface);
          break;
 
       default: