about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorMichael Vetter <jubalh@iodoru.org>2019-11-07 10:25:31 +0100
committerMichael Vetter <jubalh@iodoru.org>2019-11-07 10:25:31 +0100
commitb846c4970bb8054ca2bacb8cebdbe4d9302f4cb6 (patch)
tree39f3a5d2411ea95946a8a120a732b94a741314ef /src
parentecfa2d0c1b96c4fbd8f9312c7afc2efae08568ed (diff)
downloadprofani-tty-b846c4970bb8054ca2bacb8cebdbe4d9302f4cb6.tar.gz
Fix setting of status message
Seems this actually never worked.
Now it does.

`/status set online "This is my text"`
`/status set away bye`
`/status set away`
Diffstat (limited to 'src')
-rw-r--r--src/command/cmd_defs.c4
-rw-r--r--src/command/cmd_funcs.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/src/command/cmd_defs.c b/src/command/cmd_defs.c
index 2f103d22..0947b514 100644
--- a/src/command/cmd_defs.c
+++ b/src/command/cmd_defs.c
@@ -516,14 +516,14 @@ static struct cmd_t command_defs[] =
             CMD_TAG_CHAT,
             CMD_TAG_GROUPCHAT)
         CMD_SYN(
-            "/status set <state> [<message>]",
+            "/status set <state> [\"<message>\"]",
             "/status get <contact>|<nick>")
         CMD_DESC(
             "/status get: Find out a contact, or room members presence information. "
             "/status set: set own status.")
         CMD_ARGS(
             { "<state>",   "Own status. Possible values: chat, online, away, dnd, xa" },
-            { "<message>", "Optional message to use with the status." },
+            { "<message>", "Optional message to use with the status. Needs quotation marks if it's more than one word." },
             { "<contact>", "The contact who's presence you which to see." },
             { "<nick>",    "If in a chat room, the occupant who's presence you wish to see." })
         CMD_EXAMPLES(
diff --git a/src/command/cmd_funcs.c b/src/command/cmd_funcs.c
index f665bae1..4e3314ac 100644
--- a/src/command/cmd_funcs.c
+++ b/src/command/cmd_funcs.c
@@ -8078,8 +8078,12 @@ _update_presence(const resource_presence_t resource_presence,
 {
     char *msg = NULL;
     int num_args = g_strv_length(args);
+
+    // if no message, use status as message
     if (num_args == 2) {
         msg = args[1];
+    } else {
+        msg = args[2];
     }
 
     jabber_conn_status_t conn_status = connection_get_status();