From ae8f3c267990e2cbca84949ca17ded58302c2751 Mon Sep 17 00:00:00 2001 From: Vladimir Panteleev Date: Sat, 9 Sep 2017 09:23:50 +0000 Subject: [PATCH] randr: Look up alternative output names when searching outputs Update get_output_by_name to look at all additional names added by the change in the previous commit, not just the primary one. --- src/randr.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/randr.c b/src/randr.c index 92d652b7..bc791696 100644 --- a/src/randr.c +++ b/src/randr.c @@ -48,10 +48,18 @@ Output *get_output_by_name(const char *name, const bool require_active) { Output *output; bool get_primary = (strcasecmp("primary", name) == 0); TAILQ_FOREACH(output, &outputs, outputs) { - if ((output->primary && get_primary) || - ((!require_active || output->active) && strcasecmp(output_primary_name(output), name) == 0)) { + if (output->primary && get_primary) { return output; } + if (require_active && !output->active) { + continue; + } + struct output_name *output_name; + SLIST_FOREACH(output_name, &output->names_head, names) { + if (strcasecmp(output_name->name, name) == 0) { + return output; + } + } } return NULL; -- 2.39.5