e_compositor: Check if ds_buffer is null 74/315674/2
authorSeunghun Lee <shiin.lee@samsung.com>
Tue, 30 Jul 2024 07:50:18 +0000 (16:50 +0900)
committerJunSeok Kim <juns.kim@samsung.com>
Tue, 6 Aug 2024 05:17:55 +0000 (05:17 +0000)
The ds_surface of E_Surface can be null.

Change-Id: I9ba514352081370b70e66dc10d439c6d1c5f6613

src/bin/server/e_compositor.c

index 1faa8a9..4233d21 100644 (file)
@@ -459,14 +459,21 @@ e_surface_viewporter_resource_unset(E_Surface *surface)
 EINTERN int32_t
 e_surface_buffer_scale_get(E_Surface *surface)
 {
-   return surface->ds_surface->current.scale;
+   if (surface->ds_surface)
+     return surface->ds_surface->current.scale;
+   else
+     return surface->base.scaler.buffer_viewport.buffer.scale;
 }
 
 EINTERN enum wl_output_transform
 e_surface_buffer_transform_get(E_Surface *surface)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(surface, WL_OUTPUT_TRANSFORM_NORMAL);
-   return surface->base.scaler.buffer_viewport.buffer.transform;
+
+   if (surface->ds_surface)
+     return surface->ds_surface->current.transform;
+   else
+     return surface->base.scaler.buffer_viewport.buffer.transform;
 }
 
 EINTERN Eina_Bool