e_comp_wl_capture: fix a coverity issue not checking return of tbm_surface_map. 82/217682/2
authorSeunghun Lee <shiin.lee@samsung.com>
Wed, 13 Nov 2019 08:58:20 +0000 (17:58 +0900)
committerSeunghun Lee <shiin.lee@samsung.com>
Wed, 13 Nov 2019 09:17:16 +0000 (18:17 +0900)
Change-Id: Iec473517a5dd569e8ca3b2ced9fcea94e1c9d92a

src/bin/e_comp_wl_capture.c

index 7a662d020d85a1008ac14c4991cbb1ff290571c2..a8db50c768c58445ee91044530ba69f40424a3df 100644 (file)
@@ -293,6 +293,7 @@ _e_capture_client_main_composite(Thread_Data *td, pixman_image_t *target_image)
    unsigned char *c_src_ptr = NULL, *c_dst_ptr = NULL;
    int c_x, c_y, c_w, c_h;
    int c_tx, c_ty, c_tw, c_th;
+   int res;
 
    EINA_SAFETY_ON_NULL_RETURN(td);
 
@@ -302,7 +303,12 @@ _e_capture_client_main_composite(Thread_Data *td, pixman_image_t *target_image)
      {
         src_format = _e_capture_image_data_pixman_format_get_from_tbm_surface(tbm_surface_get_format(td->tbm_surface));
 
-        tbm_surface_map(td->tbm_surface, TBM_SURF_OPTION_READ, &info);
+        res = tbm_surface_map(td->tbm_surface, TBM_SURF_OPTION_READ, &info);
+        if (res != TBM_SURFACE_ERROR_NONE)
+          {
+             ERR("failed to map tbm_surface_h");
+             return;
+          }
         src_ptr = info.planes[0].ptr;
 
         w = tbm_surface_get_width(td->tbm_surface);
@@ -374,7 +380,12 @@ _e_capture_client_main_composite(Thread_Data *td, pixman_image_t *target_image)
              c_src_format = _e_capture_image_data_pixman_format_get_from_tbm_surface(tbm_surface_get_format(td->child_data->tbm_surface));
              c_dst_format = c_src_format;
 
-             tbm_surface_map(td->child_data->tbm_surface, TBM_SURF_OPTION_READ, &c_info);
+             res = tbm_surface_map(td->child_data->tbm_surface, TBM_SURF_OPTION_READ, &c_info);
+             if (res != TBM_SURFACE_ERROR_NONE)
+               {
+                  ERR("failed to map tbm_surface_h");
+                  goto clean_up;
+               }
              c_src_ptr = c_info.planes[0].ptr;
 
              c_src_img = pixman_image_create_bits(c_src_format, c_w, c_h, (uint32_t*)c_src_ptr, c_info.planes[0].stride);
@@ -419,7 +430,12 @@ _e_capture_client_main_composite(Thread_Data *td, pixman_image_t *target_image)
         c_dst_surface = tbm_surface_create(c_tw, c_th, tbm_surface_get_format(td->child_data->tbm_surface));
         EINA_SAFETY_ON_NULL_GOTO(c_dst_surface, clean_up);
 
-        tbm_surface_map(c_dst_surface, TBM_SURF_OPTION_WRITE, &c_info);
+        res = tbm_surface_map(c_dst_surface, TBM_SURF_OPTION_WRITE, &c_info);
+        if (res != TBM_SURFACE_ERROR_NONE)
+          {
+             ERR("failed to map tbm_surface_h");
+             goto clean_up;
+          }
         c_dst_ptr = c_info.planes[0].ptr;
 
         c_dst_img = pixman_image_create_bits(c_dst_format, c_tw, c_th, (uint32_t*)c_dst_ptr, c_info.planes[0].stride);