From 0d461ad98891bc60ea114765379587f42ad94a4d Mon Sep 17 00:00:00 2001
From: Tony Crisci <tony@dubstepdish.com>
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;
 }