summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Crisci <[email protected]>2016-07-23 23:13:09 -0400
committerTony Crisci <[email protected]>2016-07-23 23:13:09 -0400
commit0d461ad98891bc60ea114765379587f42ad94a4d (patch)
tree6265109dc0030ad6e3a3ae120ba7a4ca5fd1f4e3
parent4637462a6860cebcbf0ff196f84363a452db651d (diff)
Put ipc command result json in an array
For compatibility with i3, put the command result into an array. Returning multiple command results is still unsupported.
-rw-r--r--sway/commands.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sway/commands.c b/sway/commands.c
index 5cf93c53..ed561764 100644
--- a/sway/commands.c
+++ b/sway/commands.c
@@ -3657,6 +3657,7 @@ void free_cmd_results(struct cmd_results *results) {
}
const char *cmd_results_to_json(struct cmd_results *results) {
+ json_object *result_array = json_object_new_array();
json_object *root = json_object_new_object();
json_object_object_add(root, "success", json_object_new_boolean(results->status == CMD_SUCCESS));
if (results->input) {
@@ -3665,7 +3666,9 @@ const char *cmd_results_to_json(struct cmd_results *results) {
if (results->error) {
json_object_object_add(root, "error", json_object_new_string(results->error));
}
- const char *json = json_object_to_json_string(root);
+ json_object_array_add(result_array, root);
+ const char *json = json_object_to_json_string(result_array);
+ free(result_array);
free(root);
return json;
}