Mesa (main): gbm: Consolidate env var and default backend loops
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Jul 6 17:27:20 UTC 2021
Module: Mesa
Branch: main
Commit: af1f517ab9fae0a8dee7c17b2fc1beccc30a1c3c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=af1f517ab9fae0a8dee7c17b2fc1beccc30a1c3c
Author: James Jones <jajones at nvidia.com>
Date: Fri Dec 13 16:20:02 2019 -0800
gbm: Consolidate env var and default backend loops
Signed-off-by: James Jones <jajones at nvidia.com>
Reviewed-by: Michel Dänzer <mdaenzer at redhat.com>
Reviewed-by: Emil Velikov <emil.l.velikov at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9902>
---
src/gbm/main/backend.c | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)
diff --git a/src/gbm/main/backend.c b/src/gbm/main/backend.c
index 50c874a86f2..6e563dcf239 100644
--- a/src/gbm/main/backend.c
+++ b/src/gbm/main/backend.c
@@ -52,11 +52,11 @@ find_backend(const char *name, int fd)
struct gbm_device *dev = NULL;
unsigned i;
- for (i = 0; i < ARRAY_SIZE(backends); ++i) {
- if (strcmp(backends[i].name, name) == 0) {
- dev = backends[i].backend->create_device(fd);
- break;
- }
+ for (i = 0; i < ARRAY_SIZE(backends) && dev == NULL; ++i) {
+ if (name && strcmp(backends[i].name, name))
+ continue;
+
+ dev = backends[i].backend->create_device(fd);
}
return dev;
@@ -65,20 +65,15 @@ find_backend(const char *name, int fd)
struct gbm_device *
_gbm_create_device(int fd)
{
- const struct backend_desc *backend = NULL;
struct gbm_device *dev = NULL;
- unsigned i;
const char *b;
b = getenv("GBM_BACKEND");
if (b)
dev = find_backend(b, fd);
- for (i = 0; i < ARRAY_SIZE(backends) && dev == NULL; ++i) {
- backend = &backends[i];
+ if (!dev)
+ dev = find_backend(NULL, fd);
- dev = backend->backend->create_device(fd);
- }
-
return dev;
}
More information about the mesa-commit
mailing list