Ensure drm gem is always 'named' 48/88148/1
authorVasiliy Ulyanov <v.ulyanov@samsung.com>
Tue, 13 Sep 2016 16:10:37 +0000 (19:10 +0300)
committerVasiliy Ulyanov <v.ulyanov@samsung.com>
Tue, 13 Sep 2016 16:10:37 +0000 (19:10 +0300)
When creating EGL image from tizen surface, the underlying gem may have
no name assigned. This ends up with client handle set to zero. The commit
fixes such an issue.

Change-Id: Ica907a251d9a64a8661232e2718930caa052e0a3
Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
EGL/yagl_onscreen_image_tizen_sfc.c

index 44fdf4d2996ed0f17628ac750300592c13caa0ba..925d14ecfa688902b848329c8762b8290baced0b 100644 (file)
@@ -214,14 +214,6 @@ struct yagl_onscreen_image_tizen_sfc
             goto fail;
         }
 
-        ret = vigs_drm_gem_get_name(&drm_sfc->gem);
-
-        if (ret) {
-            YAGL_LOG_ERROR("vigs_drm_gem_get_name failed: %s", strerror(-ret));
-            yagl_set_error(EGL_BAD_ALLOC);
-            goto fail;
-        }
-
         ret = vigs_drm_gem_map(&drm_sfc->gem, 1);
 
         if (ret) {
@@ -248,6 +240,14 @@ struct yagl_onscreen_image_tizen_sfc
         vigs_drm_gem_ref(&drm_sfc->gem);
     }
 
+    ret = vigs_drm_gem_get_name(&drm_sfc->gem);
+
+    if (ret) {
+        YAGL_LOG_ERROR("vigs_drm_gem_get_name failed: %s", strerror(-ret));
+        yagl_set_error(EGL_BAD_ALLOC);
+        goto fail;
+    }
+
     if (!yagl_host_eglCreateImageYAGL(tex_global_name,
                                       dpy->host_dpy,
                                       drm_sfc->id,