~kris/suckless

slock

65b8d5278882310eed758e6fbfd6ab9676db883c — Markus Teich 10 years ago ec46680
Revert "No need for usage()"

This reverts most of commit a6dc051e3744ce5b14c54d2d246d3e8258207e76 and fixes
some related stuff:

- keep spelling fixes from original commit
- make -h and -v also work when followed by more arguments
- any unknown flag prints usage
- fix output of -v to display "slock: version 1.3" instead of "slock: slock-1.3"
2 files changed, 28 insertions(+), 5 deletions(-)

M slock.1
M slock.c
M slock.1 => slock.1 +13 -3
@@ 3,17 3,27 @@
slock \- simple X screen locker
.SH SYNOPSIS
.B slock
.RB [
.IR cmd
]
.RB [ \-v
|
.IR cmd ]
.SH DESCRIPTION
.B slock
is an X screen locker. If provided,
.IR cmd
is executed after the screen has been locked.
.SH OPTIONS
.TP
.B \-v
prints version information to stdout, then exits.
.SH EXAMPLES
$ slock /usr/sbin/s2ram
.SH CUSTOMIZATION
.B slock
can be customized by creating a custom config.h and (re)compiling the source
code. This keeps it fast, secure and simple.
.SH AUTHORS
See the LICENSE file for the authors.
.SH LICENSE
See the LICENSE file for the terms of redistribution.
.SH BUGS
Please report them.

M slock.c => slock.c +15 -2
@@ 273,15 273,28 @@ lockscreen(Display *dpy, int screen)
	return NULL;
}

int
main(int argc, char **argv)
static void
usage(void)
{
	fprintf(stderr, "usage: slock [-v|POST_LOCK_CMD]\n");
	exit(1);
}

int
main(int argc, char **argv) {
#ifndef HAVE_BSD_AUTH
	const char *pws;
#endif
	Display *dpy;
	int screen;

	if ((argc >= 2) && !strcmp("-v", argv[1]))
		die("version %s, © 2006-2016 slock engineers\n", VERSION);

	/* treat first argument starting with a '-' as option */
	if ((argc >= 2) && argv[1][0] == '-')
		usage();

#ifdef __linux__
	dontkillme();
#endif