[hackers] [PATCH 1/4] Add cleanup() to do free(locks) + XCloseDisplay()

From: Quentin Rameau <quinq_AT_fifth.space>
Date: Thu, 1 Sep 2016 13:46:19 +0200

---
 slock.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/slock.c b/slock.c
index 9ec2f71..4980325 100644
--- a/slock.c
+++ b/slock.c
_AT_@ -230,6 +230,13 @@ unlockscreen(Display *dpy, Lock *lock)
 	free(lock);
 }
 
+static void
+cleanup(Display *dpy)
+{
+	free(locks);
+	XCloseDisplay(dpy);
+}
+
 static Lock *
 lockscreen(Display *dpy, int screen)
 {
_AT_@ -349,8 +356,7 @@ main(int argc, char **argv) {
 	/* did we actually manage to lock anything? */
 	if (nlocks == 0) {
 		/* nothing to protect */
-		free(locks);
-		XCloseDisplay(dpy);
+		cleanup(dpy);
 		return 1;
 	}
 
_AT_@ -358,8 +364,7 @@ main(int argc, char **argv) {
 	if (argc > 0) {
 		switch (fork()) {
 		case -1:
-			free(locks);
-			XCloseDisplay(dpy);
+			cleanup(dpy);
 			die("slock: fork failed: %s\n", strerror(errno));
 		case 0:
 			if (close(ConnectionNumber(dpy)) < 0)
_AT_@ -382,8 +387,7 @@ main(int argc, char **argv) {
 	for (s = 0; s < nscreens; s++)
 		unlockscreen(dpy, locks[s]);
 
-	free(locks);
-	XCloseDisplay(dpy);
+	cleanup(dpy);
 
 	return 0;
 }
-- 
2.9.3
Received on Thu Sep 01 2016 - 13:46:19 CEST

This archive was generated by hypermail 2.3.0 : Thu Sep 01 2016 - 13:48:29 CEST