Introduction
Introduction Statistics Contact Development Disclaimer Help
revert using argv0 and minor fixup - slock - simple X display locker utility
git clone git://git.suckless.org/slock
Log
Files
Refs
README
LICENSE
---
commit ec46680fe10ffc69007b0a8b29d9e69c72704053
parent b02c4d452a7942d4be3c69e6f98dafd35a2e4e78
Author: Markus Teich <[email protected]>
Date: Mon, 15 Feb 2016 14:00:56 +0100
revert using argv0 and minor fixup
- use hardcoded "slock" instead of argv[0]
- add "slock: " to fprintf calls, where it was missing
- revert `argc--, argv++` shifting
Diffstat:
M slock.c | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
---
diff --git a/slock.c b/slock.c
@@ -46,15 +46,14 @@ static Bool failure = False;
static Bool rr;
static int rrevbase;
static int rrerrbase;
-static char *argv0;
static void
die(const char *errstr, ...)
{
va_list ap;
+ fputs("slock: ", stderr);
va_start(ap, errstr);
- fprintf(stderr, "%s: ", argv0);
vfprintf(stderr, errstr, ap);
va_end(ap);
exit(1);
@@ -256,7 +255,7 @@ lockscreen(Display *dpy, int screen)
usleep(1000);
}
if (!len) {
- fprintf(stderr, "unable to grab mouse pointer for screen %d\n"…
+ fprintf(stderr, "slock: unable to grab mouse pointer for scree…
} else {
for (len = 1000; len; len--) {
if (XGrabKeyboard(dpy, lock->root, True, GrabModeAsync…
@@ -266,7 +265,7 @@ lockscreen(Display *dpy, int screen)
}
usleep(1000);
}
- fprintf(stderr, "unable to grab keyboard for screen %d\n", scr…
+ fprintf(stderr, "slock: unable to grab keyboard for screen %d\…
}
/* grabbing one of the inputs failed */
running = 0;
@@ -283,8 +282,6 @@ main(int argc, char **argv)
Display *dpy;
int screen;
- argv0 = argv[0], argc--, argv++;
-
#ifdef __linux__
dontkillme();
#endif
@@ -317,11 +314,11 @@ main(int argc, char **argv)
return 1;
}
- if (argc >= 1 && fork() == 0) {
+ if (argc >= 2 && fork() == 0) {
if (dpy)
close(ConnectionNumber(dpy));
- execvp(argv[0], argv);
- die("execvp %s failed: %s\n", argv[0], strerror(errno));
+ execvp(argv[1], argv+1);
+ die("execvp %s failed: %s\n", argv[1], strerror(errno));
}
/* Everything is now blank. Now wait for the correct password. */
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.