export_fd returns negative value if fail 47/48347/1 accepted/tizen/ivi/20160218.023009 accepted/tizen/mobile/20150921.090157 accepted/tizen/tv/20150921.090211 accepted/tizen/wearable/20150921.090249 submit/tizen/20150921.055555 submit/tizen_common/20151229.142028 submit/tizen_common/20151229.144031 submit/tizen_common/20151229.154718 submit/tizen_ivi/20160217.000000 submit/tizen_ivi/20160217.000001 tizen_3.0.m2.a1_mobile_release tizen_3.0.m2.a1_tv_release
authorBoram Park <boram1288.park@samsung.com>
Fri, 18 Sep 2015 08:24:42 +0000 (17:24 +0900)
committerBoram Park <boram1288.park@samsung.com>
Fri, 18 Sep 2015 08:24:42 +0000 (17:24 +0900)
Change-Id: I23630068603cbfdbb3d64231d956eb02c9be2160

src/tbm_bufmgr_exynos4412.c

index 4c6d40f..fc8f697 100644 (file)
@@ -835,21 +835,23 @@ tbm_exynos4412_bo_export (tbm_bo bo)
 tbm_fd
 tbm_exynos4412_bo_export_fd (tbm_bo bo)
 {
-    EXYNOS4412_RETURN_VAL_IF_FAIL (bo!=NULL, 0);
+    EXYNOS4412_RETURN_VAL_IF_FAIL (bo!=NULL, -1);
 
     tbm_bo_exynos4412 bo_exynos4412;
+    int ret;
 
     bo_exynos4412 = (tbm_bo_exynos4412)tbm_backend_get_bo_priv(bo);
-    EXYNOS4412_RETURN_VAL_IF_FAIL (bo_exynos4412!=NULL, 0);
+    EXYNOS4412_RETURN_VAL_IF_FAIL (bo_exynos4412!=NULL, -1);
 
     struct drm_prime_handle arg = {0, };
 
     arg.handle = bo_exynos4412->gem;
-    if (drmIoctl (bo_exynos4412->fd, DRM_IOCTL_PRIME_HANDLE_TO_FD, &arg))
+    ret = drmIoctl (bo_exynos4412->fd, DRM_IOCTL_PRIME_HANDLE_TO_FD, &arg);
+    if (ret)
     {
         TBM_EXYNOS4412_LOG ("error bo:%p Cannot dmabuf=%d (%s)\n",
             bo, bo_exynos4412->gem, strerror(errno));
-        return (tbm_fd) 0;
+        return (tbm_fd) ret;
     }
 
     DBG (" [%s] bo:%p, gem:%d(%d), fd:%d, key_fd:%d, flags:%d(%d), size:%d\n", target_name(),