sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 40b3215444ed48d2ed9bbaa00f20f266f5318f5a
parent 28c8e4fb9e6da839d353be723be60bb7bf2ebcdb
Author: Drew DeVault <sir@cmpwn.com>
Date:   Thu, 25 Feb 2016 18:09:20 -0500

Merge pull request #494 from gpyh/argsegfault

Fix segfault when trying to use sway as IPC without a sway instance
Diffstat:
Msway/main.c | 6+++++-
Msway/sway.5.txt | 2+-
2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/sway/main.c b/sway/main.c @@ -25,6 +25,7 @@ static bool terminate_request = false; void sway_terminate(void) { terminate_request = true; wlc_terminate(); + exit(EXIT_FAILURE); } void sig_handler(int signal) { @@ -103,7 +104,7 @@ int main(int argc, char **argv) { int c; while (1) { int option_index = 0; - c = getopt_long(argc, argv, "hCdvVpc:", long_options, &option_index); + c = getopt_long(argc, argv, "hCdvVc:", long_options, &option_index); if (c == -1) { break; } @@ -148,6 +149,9 @@ int main(int argc, char **argv) { } if (optind < argc) { // Behave as IPC client + if(optind != 1) { + sway_abort("Don't use options with the IPC client"); + } if (getuid() != geteuid() || getgid() != getegid()) { if (setgid(getgid()) != 0 || setuid(getuid()) != 0) { sway_abort("Unable to drop root"); diff --git a/sway/sway.5.txt b/sway/sway.5.txt @@ -16,7 +16,7 @@ startup. These commands usually consist of setting your preferences and setting key bindings. An example config is likely present in /etc/sway/config for you to check out. -All of these commands may be issued at runtime through **sway-msg**(1). +All of these commands may be issued at runtime through **swaymsg**(1). Commands --------