summaryrefslogtreecommitdiff
path: root/xf86drm.c
diff options
context:
space:
mode:
authorEmil Velikov <emil.l.velikov@gmail.com>2015-09-07 13:51:54 +0100
committerEmil Velikov <emil.l.velikov@gmail.com>2015-09-21 17:42:48 +0100
commitbc2aca9e22bf2cc82874f3e44568c684eec9c5e1 (patch)
tree2e8c94c8c1a26dc8f3163d357ec7f3f4e933b917 /xf86drm.c
parenta250fceaaa150363accaf3fb71a0e42bcecc40da (diff)
xf86drm: rename drmSameDevice to drmCompareBusInfo
Move away form the boolean name, change the return value appropriately and check if either argument is NULL. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'xf86drm.c')
-rw-r--r--xf86drm.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/xf86drm.c b/xf86drm.c
index dc1782d3..310d1e8f 100644
--- a/xf86drm.c
+++ b/xf86drm.c
@@ -2893,20 +2893,22 @@ static int drmParsePciBusInfo(int maj, int min, drmPciBusInfoPtr info)
return 0;
}
-static int drmSameDevice(drmDevicePtr a, drmDevicePtr b)
+static int drmCompareBusInfo(drmDevicePtr a, drmDevicePtr b)
{
+ if (a == NULL || b == NULL)
+ return -1;
+
if (a->bustype != b->bustype)
- return 0;
+ return -1;
switch (a->bustype) {
case DRM_BUS_PCI:
- if (memcmp(a->businfo.pci, b->businfo.pci, sizeof(drmPciBusInfo)) == 0)
- return 1;
+ return memcmp(a->businfo.pci, b->businfo.pci, sizeof(drmPciBusInfo));
default:
break;
}
- return 0;
+ return -1;
}
static int drmGetNodeType(const char *name)
@@ -3104,7 +3106,7 @@ int drmGetDevices(drmDevicePtr devices[], int max_devices)
for (j = i+1; j < node_count; j++) {
if (duplicated[i] || duplicated[j])
continue;
- if (drmSameDevice(&devs[i], &devs[j])) {
+ if (drmCompareBusInfo(&devs[i], &devs[j]) == 0) {
duplicated[j] = 1;
devs[i].available_nodes |= devs[j].available_nodes;
node_type = log2(devs[j].available_nodes);