Fix drmMMUnlock / drmMMLock return values.
authorThomas Hellstrom <thomas-at-tungstengraphics-dot-com>
Wed, 13 Jun 2007 13:59:28 +0000 (15:59 +0200)
committerThomas Hellstrom <thomas-at-tungstengraphics-dot-com>
Wed, 13 Jun 2007 13:59:28 +0000 (15:59 +0200)
libdrm/xf86drm.c

index 1f242fe31c78aa3207e79741c0594616953cf26f..9318551284bdeb0bb70d9458a349ec3047c19414 100644 (file)
@@ -3260,7 +3260,8 @@ int drmMMLock(int fd, unsigned memType)
     do{
        ret = ioctl(fd, DRM_IOCTL_MM_INIT, &arg);
     } while (ret && errno == EAGAIN);
-    return -errno;     
+
+    return (ret) ? -errno : 0;
 }
 
 int drmMMUnlock(int fd, unsigned memType)
@@ -3275,7 +3276,8 @@ int drmMMUnlock(int fd, unsigned memType)
     do{
        ret = ioctl(fd, DRM_IOCTL_MM_INIT, &arg);
     } while (ret && errno == EAGAIN);
-    return -errno;     
+
+    return (ret) ? -errno : 0;
 }
 
 #define DRM_MAX_FDS 16