From 0d461ad98891bc60ea114765379587f42ad94a4d Mon Sep 17 00:00:00 2001 From: Tony Crisci Date: Sat, 23 Jul 2016 23:13:09 -0400 Subject: [PATCH] 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. --- sway/commands.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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; }