aboutsummaryrefslogtreecommitdiff
path: root/sway/commands/output
diff options
context:
space:
mode:
authorRyan Dwyer <ryandwyer1@gmail.com>2019-01-20 10:50:11 +1000
committeremersion <contact@emersion.fr>2019-01-22 09:55:13 +0100
commit75e7ce82f5a28693b4e559797c8606c528d61892 (patch)
tree976aaed15b9e5113e77ddb73541a34e438128659 /sway/commands/output
parent2301349ad59751640ed9e59dd22edeafaf09da39 (diff)
Prevent noop output from being enabled
Diffstat (limited to 'sway/commands/output')
-rw-r--r--sway/commands/output/enable.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sway/commands/output/enable.c b/sway/commands/output/enable.c
index 71a7d75a..0c98b481 100644
--- a/sway/commands/output/enable.c
+++ b/sway/commands/output/enable.c
@@ -1,3 +1,4 @@
+#include <strings.h>
#include "sway/commands.h"
#include "sway/config.h"
@@ -5,6 +6,15 @@ struct cmd_results *output_cmd_enable(int argc, char **argv) {
if (!config->handler_context.output_config) {
return cmd_results_new(CMD_FAILURE, "Missing output config");
}
+
+ // The NOOP-1 output is a dummy output used when there's no outputs
+ // connected. It should never be enabled.
+ char *output_name = config->handler_context.output_config->name;
+ if (strcasecmp(output_name, "NOOP-1") == 0) {
+ return cmd_results_new(CMD_FAILURE,
+ "Refusing to enable the no op output");
+ }
+
config->handler_context.output_config->enabled = 1;
config->handler_context.leftovers.argc = argc;