Module Name:    xsrc
Committed By:   riastradh
Date:           Sat Mar 22 02:15:00 UTC 2014

Modified Files:
        xsrc/external/mit/libdrm/dist: xf86drm.c

Log Message:
Use #ifdef DRM_IOCTL_MMAP, not #ifdef __NetBSD__.

Initialize with `= {0}' rather than a temporary static constant
variable.

Requested by christos@.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 xsrc/external/mit/libdrm/dist/xf86drm.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/libdrm/dist/xf86drm.c
diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.6 xsrc/external/mit/libdrm/dist/xf86drm.c:1.7
--- xsrc/external/mit/libdrm/dist/xf86drm.c:1.6	Fri Mar 21 18:09:50 2014
+++ xsrc/external/mit/libdrm/dist/xf86drm.c	Sat Mar 22 02:15:00 2014
@@ -1138,9 +1138,8 @@ int drmClose(int fd)
 int drmMap(int fd, drm_handle_t handle, drmSize size, drmAddressPtr address)
 {
     static unsigned long pagesize_mask = 0;
-#ifdef __NetBSD__		/* XXX */
-    static const struct drm_mmap zero_mmap_req;
-    struct drm_mmap mmap_req = zero_mmap_req;
+#ifdef DRM_IOCTL_MMAP
+    struct drm_mmap mmap_req = {0};
 #endif
 
     if (fd < 0)
@@ -1151,20 +1150,20 @@ int drmMap(int fd, drm_handle_t handle, 
 
     size = (size + pagesize_mask) & ~pagesize_mask;
 
-#ifdef __NetBSD__
+#ifdef DRM_IOCTL_MMAP
     mmap_req.dnm_addr = NULL;
     mmap_req.dnm_size = size;
     mmap_req.dnm_prot = (PROT_READ | PROT_WRITE);
     mmap_req.dnm_flags = MAP_SHARED;
     mmap_req.dnm_offset = handle;
-    if (drmIoctl(fd, DRM_IOCTL_MMAP, &mmap_req) == -1)
-	return -errno;
-    *address = mmap_req.dnm_addr;
-#else
+    if (drmIoctl(fd, DRM_IOCTL_MMAP, &mmap_req) == 0) {
+	*address = mmap_req.dnm_addr;
+	return 0;
+    }
+#endif
     *address = mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, fd, handle);
     if (*address == MAP_FAILED)
 	return -errno;
-#endif
     return 0;
 }
 

Reply via email to