xf86drm: Handle unrecognized subsystems safely in drmGetDevice[s]()
Both drmGetDevice() and drmGetDevices() currently print a warning when they encounter an unknown (non-PCI) subsystem type for a device node, but they still proceed to assume that the drmDevicePtr was initialized and try to add it to the local device array. Add a 'continue' to the error case handling to bypass the rest of the processing for devices we can't handle. Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>main
parent
cf0f036e3d
commit
ba5a6ecf81
|
@ -3140,7 +3140,7 @@ int drmGetDevice(int fd, drmDevicePtr *device)
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
fprintf(stderr, "The subsystem type is not supported yet\n");
|
fprintf(stderr, "The subsystem type is not supported yet\n");
|
||||||
break;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i >= max_count) {
|
if (i >= max_count) {
|
||||||
|
@ -3244,7 +3244,7 @@ int drmGetDevices(drmDevicePtr devices[], int max_devices)
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
fprintf(stderr, "The subsystem type is not supported yet\n");
|
fprintf(stderr, "The subsystem type is not supported yet\n");
|
||||||
break;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i >= max_count) {
|
if (i >= max_count) {
|
||||||
|
|
Loading…
Reference in New Issue