diff options
author | David Eklov <david.eklov@gmail.com> | 2016-07-12 22:42:16 -0500 |
---|---|---|
committer | David Eklov <david.eklov@gmail.com> | 2016-07-13 08:20:40 -0500 |
commit | ea0a93c5c4a8caf8b61ef177315b3f42f4c623ec (patch) | |
tree | a38996a1ea485a7c0148f767438aa8089a4568c4 | |
parent | 0374154749653b5f29b86e255af7b2346bddebe0 (diff) |
swaylock: Add -f option to detach from the controlling terminal, fixes #725
-rw-r--r-- | swaylock/main.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/swaylock/main.c b/swaylock/main.c index a0a2f1cb..af1f7a74 100644 --- a/swaylock/main.c +++ b/swaylock/main.c @@ -333,6 +333,7 @@ int main(int argc, char **argv) { {"version", no_argument, NULL, 'v'}, {"socket", required_argument, NULL, 'p'}, {"no-unlock-indicator", no_argument, NULL, 'u'}, + {"daemonize", no_argument, NULL, 'f'}, {0, 0, 0, 0} }; @@ -346,14 +347,16 @@ int main(int argc, char **argv) { " -v, --version Show the version number and quit.\n" " -i, --image [<output>:]<path> Display the given image.\n" " -u, --no-unlock-indicator Disable the unlock indicator.\n" + " -f, --daemonize Detach from the controlling terminal.\n" " --socket <socket> Use the specified socket.\n"; + registry = registry_poll(); int c; while (1) { int option_index = 0; - c = getopt_long(argc, argv, "hc:i:s:tvu", long_options, &option_index); + c = getopt_long(argc, argv, "hc:i:s:tvuf", long_options, &option_index); if (c == -1) { break; } @@ -421,6 +424,9 @@ int main(int argc, char **argv) { case 'u': show_indicator = false; break; + case 'f': + daemon(0, 0); + break; default: fprintf(stderr, "%s", usage); exit(EXIT_FAILURE); |