diff --git a/src/common.c b/src/common.c
index 53158aafaab13288b54d332c48dd64d938bb6a6b..f301ac07491d5fc6ca53711aae491f1987c91276 100644
--- a/src/common.c
+++ b/src/common.c
@@ -154,6 +154,6 @@ int
 read_self_exe(char *path, size_t len)
 {
     return ! (readlink(SELF_EXECUTABLE_LINUX,   path, len - 1) > 0) ||
-             (readlink(SELF_EXECUTABLE_FREEBSD, path, len - 1) > 0) ||
-             (readlink(SELF_EXECUTABLE_SOLARIS, path, len - 1) > 0);
+           (readlink(SELF_EXECUTABLE_FREEBSD, path, len - 1) > 0) ||
+           (readlink(SELF_EXECUTABLE_SOLARIS, path, len - 1) > 0);
 }
diff --git a/src/main/lkt.c b/src/main/lkt.c
index 6b4dfd27a022a0190a057b65eb080f70bf7aa644..a3230844dd5b6ad15864405a3c37e4cfabbc03ea 100644
--- a/src/main/lkt.c
+++ b/src/main/lkt.c
@@ -28,7 +28,7 @@
 #define LKT_KEY_VALUE_SEP               ": \n\t\0"
 #define STR_MATCH(str1, str2)           (! strcasecmp(str1, str2))
 #define STR_NMATCH(str1, str2, n)       (! strncasecmp(str1, str2, n))
-#define fail_if(cond, msg)              if (cond) { LOG_ERROR("%s", msg); exit(EXIT_FAILURE); }
+#define fail_if(cond, msg)              { if (cond) { LOG_ERROR("%s", msg); exit(EXIT_FAILURE); } }
 #define fail(msg)                       { LOG_ERROR("%s", msg); exit(EXIT_FAILURE); }
 #define lkt_send_and_exit(buffer, len)  exit(write_socket(lkt_connect(), buffer, len))
 #define write_socket(sock, buff, len)   (fwrite(buff, sizeof(char), len, sock) != len)
@@ -377,10 +377,8 @@ ok:
 noreturn void
 queue_pop__(struct lkt_cmd_args *args)
 {
-    if (args->argc != 0)
-        fail("Invalid argument, the pop command takes no arguments");
-
-    int ret = EXIT_FAILURE, songid = 0;
+    fail_if(!args->argc, "Invalid argument");
+    int songid = 0;
     char buff[LKT_MESSAGE_MAX];
     FILE *sock = lkt_connect();
 
@@ -410,10 +408,9 @@ queue_pop__(struct lkt_cmd_args *args)
     sock = lkt_connect();
     if (!songid)
         goto error;
-    write_socket_format(sock, "next\ndeleteid %d\n", songid);
-    ret = EXIT_SUCCESS;
+    exit(write_socket_format(sock, "next\ndeleteid %d\n", songid));
 error:
-    exit(ret);
+    exit(EXIT_FAILURE);
 }
 
 noreturn void
@@ -506,7 +503,7 @@ queue_delete__(struct lkt_cmd_args *args)
 
     sscanf(args->argv[0], "%d", &dumy);
     if (dumy != 0) {
-        write_socket_format(sock, cmd_id__, dumy);
+        fail_if(write_socket_format(sock, cmd_id__, dumy), "ACK");
         exit_with_status(sock, buff);
     }
 
@@ -527,18 +524,18 @@ queue_add__(struct lkt_cmd_args *args)
 
     FILE *sock = lkt_connect();
 
-    write_socket(sock, "add ", 4 * sizeof(char));
-    write_socket(sock, args->argv[0], strlen(args->argv[0]));
-    write_socket(sock, "://", 3 * sizeof(char));
+    (void) write_socket(sock, "add ", 4 * sizeof(char));
+    (void) write_socket(sock, args->argv[0], strlen(args->argv[0]));
+    (void) write_socket(sock, "://", 3 * sizeof(char));
 
     for (i = 1; i < args->argc - 1; ++i) {
-        write_socket(sock, args->argv[i], strlen(args->argv[i]));
-        write_socket(sock, " ", sizeof(char));
+        (void) write_socket(sock, args->argv[i], strlen(args->argv[i]));
+        (void) write_socket(sock, " ", sizeof(char));
     }
 
     /* Here we have `i == argc - 1`. */
-    write_socket(sock, args->argv[i], strlen(args->argv[i]));
-    write_socket(sock, "\n", sizeof(char));
+    (void) write_socket(sock, args->argv[i], strlen(args->argv[i]));
+    (void) write_socket(sock, "\n", sizeof(char));
     exit_with_status(sock, buff);
 }
 
@@ -559,7 +556,7 @@ queue_seek__(struct lkt_cmd_args *args)
         fail("Invalid argument, must be only one integer");
 
     FILE *sock = lkt_connect();
-    write_socket_format(sock, "playid %ld\n", id);
+    fail_if(write_socket_format(sock, "playid %ld\n", id), "ACK");
     exit_with_status(sock, buf);
 }
 
@@ -589,10 +586,8 @@ queue_pos__(struct lkt_cmd_args *args)
     FILE *sock = NULL;
 redo:
     sock = lkt_connect();
-    if (up != 0)
-        write_socket_format(sock, "playlist %d:%d\n", continuation, up);
-    else
-        write_socket_format(sock, "playlist %d\n", continuation);
+    fail_if(up != 0 && write_socket_format(sock, "playlist %d:%d\n", continuation, up), "ACK");
+    fail_if(up == 0 && write_socket_format(sock, "playlist %d\n", continuation),        "ACK");
 
     for (;;) {
         memset(buff, 0, LKT_MESSAGE_MAX * sizeof(char));
@@ -684,20 +679,20 @@ plt_add__(struct lkt_cmd_args *args)
     fail_if(args->argc < 3,                 "Invalid argument, need at least three arguments: plt add <plt> <query>");
     fail_if(!lkt_valid_type(args->argv[1]), "Invalid argument, type for the query is invalid");
 
-    write_socket(sock, "playlistadd ", strlen("playlistadd "));
-    write_socket(sock, args->argv[0], strlen(args->argv[0]));
-    write_socket(sock, " ", sizeof(char));
-    write_socket(sock, args->argv[1], strlen(args->argv[1]));
-    write_socket(sock, "://", 3 * sizeof(char));
+    (void) write_socket(sock, "playlistadd ", strlen("playlistadd "));
+    (void) write_socket(sock, args->argv[0], strlen(args->argv[0]));
+    (void) write_socket(sock, " ", sizeof(char));
+    (void) write_socket(sock, args->argv[1], strlen(args->argv[1]));
+    (void) write_socket(sock, "://", 3 * sizeof(char));
 
     for (i = 2; i < args->argc - 1; ++i) {
-        write_socket(sock, args->argv[i], strlen(args->argv[i]));
-        write_socket(sock, " ", sizeof(char));
+        (void) write_socket(sock, args->argv[i], strlen(args->argv[i]));
+        (void) write_socket(sock, " ", sizeof(char));
     }
 
     /* Here we have `i == argc - 1`. */
-    write_socket(sock, args->argv[i], strlen(args->argv[i]));
-    write_socket(sock, "\n", sizeof(char));
+    (void) write_socket(sock, args->argv[i], strlen(args->argv[i]));
+    (void) write_socket(sock, "\n", sizeof(char));
     exit_with_status(sock, buff);
 }
 
@@ -710,18 +705,18 @@ plt_delete__(struct lkt_cmd_args *args)
 
     fail_if(args->argc < 1, "Invalid argument");
 
-    write_socket(sock, "playlistdelete ", strlen("playlistdelete "));
-    write_socket(sock, args->argv[0], strlen(args->argv[0]));
-    write_socket(sock, " ", sizeof(char));
+    (void) write_socket(sock, "playlistdelete ", strlen("playlistdelete "));
+    (void) write_socket(sock, args->argv[0], strlen(args->argv[0]));
+    (void) write_socket(sock, " ", sizeof(char));
 
     for (i = 1; i < args->argc - 1; ++i) {
-        write_socket(sock, args->argv[i], strlen(args->argv[i]));
-        write_socket(sock, " ", sizeof(char));
+        (void) write_socket(sock, args->argv[i], strlen(args->argv[i]));
+        (void) write_socket(sock, " ", sizeof(char));
     }
 
     /* Here we have `i == argc - 1`. */
-    write_socket(sock, args->argv[i], strlen(args->argv[i]));
-    write_socket(sock, "\n", sizeof(char));
+    (void) write_socket(sock, args->argv[i], strlen(args->argv[i]));
+    (void) write_socket(sock, "\n", sizeof(char));
     exit_with_status(sock, buff);
 }
 
@@ -734,9 +729,9 @@ plt_destroy__(struct lkt_cmd_args *args)
     char buff[2];
     const char *name = args->argv[0];
 
-    write_socket(sock, "rm ", 3 * sizeof(char));
-    write_socket(sock, name, strlen(name));
-    write_socket(sock, "\n", sizeof(char));
+    (void) write_socket(sock, "rm ", 3 * sizeof(char));
+    (void) write_socket(sock, name, strlen(name));
+    (void) write_socket(sock, "\n", sizeof(char));
     exit_with_status(sock, buff);
 }
 
@@ -749,9 +744,9 @@ plt_create__(struct lkt_cmd_args *args)
     char buff[2];
     const char *name = args->argv[0];
 
-    write_socket(sock, "playlistadd ", strlen("playlistadd "));
-    write_socket(sock, name, strlen(name));
-    write_socket(sock, "\n", sizeof(char));
+    (void) write_socket(sock, "playlistadd ", strlen("playlistadd "));
+    (void) write_socket(sock, name, strlen(name));
+    (void) write_socket(sock, "\n", sizeof(char));
     exit_with_status(sock, buff);
 }
 
@@ -772,7 +767,7 @@ redo:
     write_socket_format(sock, "%d %s", continuation, cmd);
     for (i = 0; i < args->argc; ++i)
         write_socket_format(sock, " %s", args->argv[i]);
-    write_socket(sock, "\n", sizeof("\n") / sizeof(char));
+    (void) write_socket(sock, "\n", sizeof("\n") / sizeof(char));
 
     for (;;) {
         memset(buff, 0, LKT_MESSAGE_MAX * sizeof(char));
diff --git a/src/main/server.c b/src/main/server.c
index 206686427b03f7dd0cd634bc791d44f2b4bdc422..ed5d012bc33412dae1cb130df3315b23889ac771 100644
--- a/src/main/server.c
+++ b/src/main/server.c
@@ -33,7 +33,7 @@ normal_launch:
     LOG_INFO("Lektor launched by user %s (shell: %s, home: %s)", pw->pw_name, pw->pw_shell, pw->pw_dir);
     mthread_init();
     pthread_create(&th, NULL, mthread_main, NULL);
-    if(read_self_exe(exe, PATH_MAX))
+    if (read_self_exe(exe, PATH_MAX))
         LOG_WARN_SCT("GENERAL", "%s", "Failed to read self executable path, restart may not work");
     executable_name = exe;
     return lkt_listen();