mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-11-21 22:52:20 +00:00
backend/drm: handle errors when fetching DRM name/version
These functions can fail if the FD is not a DRM device or on memory allocation failure, for instance.
This commit is contained in:
parent
82b4bc3f5f
commit
3aef433f97
@ -171,7 +171,17 @@ struct wlr_backend *wlr_drm_backend_create(struct wlr_session *session,
|
||||
assert(!parent || wlr_backend_is_drm(parent));
|
||||
|
||||
char *name = drmGetDeviceNameFromFd2(dev->fd);
|
||||
if (name == NULL) {
|
||||
wlr_log_errno(WLR_ERROR, "drmGetDeviceNameFromFd2() failed");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
drmVersion *version = drmGetVersion(dev->fd);
|
||||
if (version == NULL) {
|
||||
wlr_log_errno(WLR_ERROR, "drmGetVersion() failed");
|
||||
free(name);
|
||||
return NULL;
|
||||
}
|
||||
wlr_log(WLR_INFO, "Initializing DRM backend for %s (%s)", name, version->name);
|
||||
drmFreeVersion(version);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user