From 0fb56a92d06a2742017a64bbfa8c9393eb0e251f Mon Sep 17 00:00:00 2001 From: Orestis Floros Date: Thu, 14 May 2020 21:53:21 +0200 Subject: [PATCH] get_output_by_name: guard output->primary with require_active This is related to #4048 but might not fix it completely. Either way, this should be the correct behaviour of the function. --- src/randr.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/randr.c b/src/randr.c index bdb1ce12e..1ea3a062e 100644 --- a/src/randr.c +++ b/src/randr.c @@ -51,12 +51,12 @@ 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) { - return output; - } if (require_active && !output->active) { continue; } + if (output->primary && get_primary) { + return output; + } struct output_name *output_name; SLIST_FOREACH (output_name, &output->names_head, names) { if (strcasecmp(output_name->name, name) == 0) {