From: Ingo Bürk Date: Sat, 28 Feb 2015 23:13:37 +0000 (+0100) Subject: Glob filepath when calling append_layout X-Git-Tag: 4.10.1~81^2 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=9e739de5d3ab0b1044d333097c3ed5b590cd1b99;p=i3%2Fi3 Glob filepath when calling append_layout fixes #1500 --- diff --git a/src/commands.c b/src/commands.c index 498c25c8..3391fe5b 100644 --- a/src/commands.c +++ b/src/commands.c @@ -900,11 +900,15 @@ void cmd_nop(I3_CMD, char *comment) { void cmd_append_layout(I3_CMD, char *path) { LOG("Appending layout \"%s\"\n", path); + /* Make sure we allow paths like '~/.i3/layout.json' */ + path = resolve_tilde(path); + json_content_t content = json_determine_content(path); LOG("JSON content = %d\n", content); if (content == JSON_CONTENT_UNKNOWN) { ELOG("Could not determine the contents of \"%s\", not loading.\n", path); ysuccess(false); + free(path); return; } @@ -946,6 +950,7 @@ void cmd_append_layout(I3_CMD, char *path) { if (content == JSON_CONTENT_WORKSPACE) ipc_send_workspace_event("restored", parent, NULL); + free(path); cmd_output->needs_tree_render = true; }