fixed using wrong drm fd 46/113546/1
authorChangyeon Lee <cyeon.lee@samsung.com>
Wed, 8 Feb 2017 06:04:00 +0000 (15:04 +0900)
committerChangyeon Lee <cyeon.lee@samsung.com>
Wed, 8 Feb 2017 06:04:00 +0000 (15:04 +0900)
Change-Id: I9d2bdac16acd0ee393a33a4aa171a2e91eecdc88

src/tbm_bufmgr_dumb.c

index 9f4b0b9..613c725 100644 (file)
@@ -1516,12 +1516,6 @@ init_tbm_bufmgr_priv (tbm_bufmgr bufmgr, int fd)
     if (!bufmgr)
         return 0;
 
-    ret = drmGetCap(fd, DRM_CAP_DUMB_BUFFER, &cap);
-    if (ret || cap == 0) {
-        TBM_DUMB_LOG ("error: drm  buffer isn't supported !\n");
-        return 0;
-    }
-
     bufmgr_dumb = calloc (1, sizeof(struct _tbm_bufmgr_dumb));
     if (!bufmgr_dumb)
     {
@@ -1556,6 +1550,12 @@ init_tbm_bufmgr_priv (tbm_bufmgr bufmgr, int fd)
         }
     }
 
+    ret = drmGetCap(bufmgr_dumb->fd, DRM_CAP_DUMB_BUFFER, &cap);
+    if (ret || cap == 0) {
+        TBM_DUMB_LOG ("error: drm  buffer isn't supported !\n");
+        goto fail_get_cap;
+    }
+
     //Create Hash Table
     bufmgr_dumb->hashBos = drmHashCreate ();
 
@@ -1637,6 +1637,7 @@ fail_alloc_backend:
                drmHashDestroy(bufmgr_dumb->hashBos);
        if (bufmgr_dumb->device_name)
                free(bufmgr_dumb->device_name);
+fail_get_cap:
 fail_get_device_name:
        if (tbm_backend_is_display_server())
                tbm_drm_helper_unset_tbm_master_fd();