]> git.sur5r.net Git - i3/i3/commitdiff
Add proper return code for i3-msg 3614/head
authorNils ANDRÉ-CHANG <nils.andre.chang@gmail.com>
Sat, 9 Feb 2019 14:22:08 +0000 (14:22 +0000)
committerNils ANDRÉ-CHANG <nils.andre.chang@gmail.com>
Thu, 21 Feb 2019 19:52:55 +0000 (19:52 +0000)
i3-msg/main.c
man/i3-msg.man

index fe1114168c2c7a31ba20f0768a9a9c674f43e6c2..0ada5f643147dab31f2a76237d7b33fd1d3e07bb 100644 (file)
@@ -67,6 +67,7 @@ typedef struct reply_t {
     char *errorposition;
 } reply_t;
 
+static int exit_code = 0;
 static reply_t last_reply;
 
 static int reply_boolean_cb(void *params, int val) {
@@ -100,6 +101,7 @@ static int reply_end_map_cb(void *params) {
             fprintf(stderr, "ERROR:               %s\n", last_reply.errorposition);
         }
         fprintf(stderr, "ERROR: %s\n", last_reply.error);
+        exit_code = 2;
     }
     return 1;
 }
@@ -326,5 +328,5 @@ int main(int argc, char *argv[]) {
 
     close(sockfd);
 
-    return 0;
+    return exit_code;
 }
index 625131de5855f16cac7b4fc10aeef881c5ef656f..ce9b476d58aabd7b545b1a846a3a016a9a24d74c 100644 (file)
@@ -90,6 +90,15 @@ See the -m option for continuous monitoring.
 i3-msg is a sample implementation for a client using the unix socket IPC
 interface to i3.
 
+=== Exit status:
+
+0:
+if OK,
+1:
+if invalid syntax or unable to connect to ipc-socket
+2:
+if i3 returned an error processing your command(s)
+
 == EXAMPLES
 
 ------------------------------------------------