diff options
author | Alex Xu (Hello71) <alex_y_xu@yahoo.ca> | 2017-08-16 20:48:34 -0400 |
---|---|---|
committer | Alex Xu (Hello71) <alex_y_xu@yahoo.ca> | 2017-08-16 20:48:34 -0400 |
commit | 7cf5bfe38b8345b2466d3ef7ba7d06040dc57e9d (patch) | |
tree | 4e90970f20f56d1082e8b69f1d05683fa659ff95 | |
parent | cf89b3457feaa7f7695fc992d25473f773423008 (diff) | |
download | inhibit-screensaver-7cf5bfe38b8345b2466d3ef7ba7d06040dc57e9d.tar.xz inhibit-screensaver-7cf5bfe38b8345b2466d3ef7ba7d06040dc57e9d.zip |
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | Makefile | 10 | ||||
-rw-r--r-- | example.c | 6 |
3 files changed, 15 insertions, 2 deletions
@@ -1,2 +1,3 @@ /inhibit-screensaver +/c-example *.o @@ -3,13 +3,21 @@ bindir := $(prefix)/bin CFLAGS += $(shell pkg-config --cflags dbus-1) -Wall -Wextra -std=c99 LDLIBS := $(shell pkg-config --libs dbus-1) +all: inhibit-screensaver c-example inhibit-screensaver: inhibit-screensaver.o +c-example: c-example.o + +c-example.o: example.c + $(COMPILE.c) $(OUTPUT_OPTION) $< + clean: - $(RM) inhibit-screensaver.o inhibit-screensaver + $(RM) inhibit-screensaver.o inhibit-screensaver c-example.o c-example install: install -D -m0755 inhibit-screensaver $(bindir) uninstall: $(RM) $(bindir)/inhibit-screensaver + +.PHONY: clean install uninstall @@ -1,3 +1,4 @@ +#define _DEFAULT_SOURCE #include <fcntl.h> #include <signal.h> #include <stdio.h> @@ -22,11 +23,14 @@ int main() { // works even if process dies! kill(getpid(), SIGKILL); + + // otherwise, release the inhibition: + close(pipefd[1]); } else { close(pipefd[1]); - close(0); dup2(pipefd[0], 0); execl("./inhibit-screensaver", "./inhibit-screensaver", "c-inhibitor-example", "testing", (char *)NULL); + perror("exec inhibit-screensaver"); exit(1); } } |