diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-06-11 15:29:51 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-11 15:29:51 +0800 |
commit | cce9460524aa17bcd4daa095f4706220b81f8845 (patch) | |
tree | c58ef3571f3745d579a872e4a054fafd846a6157 /src/nvim/main.c | |
parent | 4229bbe514b7a1bc5b9f888a294cc8a323a7d869 (diff) | |
download | rneovim-cce9460524aa17bcd4daa095f4706220b81f8845.tar.gz rneovim-cce9460524aa17bcd4daa095f4706220b81f8845.tar.bz2 rneovim-cce9460524aa17bcd4daa095f4706220b81f8845.zip |
fix(remote): make --remote-expr print to stdout (#23980)
Diffstat (limited to 'src/nvim/main.c')
-rw-r--r-- | src/nvim/main.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/nvim/main.c b/src/nvim/main.c index 88eedf80d3..6a02aa3dae 100644 --- a/src/nvim/main.c +++ b/src/nvim/main.c @@ -953,7 +953,7 @@ static void remote_request(mparm_T *params, int remote_args, char *server_addr, TriState tabbed = kNone; for (size_t i = 0; i < rvobj.data.dictionary.size; i++) { - if (strcmp(rvobj.data.dictionary.items[i].key.data, "errmsg") == 0) { + if (strequal(rvobj.data.dictionary.items[i].key.data, "errmsg")) { if (rvobj.data.dictionary.items[i].value.type != kObjectTypeString) { os_errmsg("vim._cs_remote returned an unexpected type for 'errmsg'\n"); os_exit(2); @@ -961,13 +961,20 @@ static void remote_request(mparm_T *params, int remote_args, char *server_addr, os_errmsg(rvobj.data.dictionary.items[i].value.data.string.data); os_errmsg("\n"); os_exit(2); - } else if (strcmp(rvobj.data.dictionary.items[i].key.data, "tabbed") == 0) { + } else if (strequal(rvobj.data.dictionary.items[i].key.data, "result")) { + if (rvobj.data.dictionary.items[i].value.type != kObjectTypeString) { + os_errmsg("vim._cs_remote returned an unexpected type for 'result'\n"); + os_exit(2); + } + os_msg(rvobj.data.dictionary.items[i].value.data.string.data); + os_msg("\n"); + } else if (strequal(rvobj.data.dictionary.items[i].key.data, "tabbed")) { if (rvobj.data.dictionary.items[i].value.type != kObjectTypeBoolean) { os_errmsg("vim._cs_remote returned an unexpected type for 'tabbed'\n"); os_exit(2); } tabbed = rvobj.data.dictionary.items[i].value.data.boolean ? kTrue : kFalse; - } else if (strcmp(rvobj.data.dictionary.items[i].key.data, "should_exit") == 0) { + } else if (strequal(rvobj.data.dictionary.items[i].key.data, "should_exit")) { if (rvobj.data.dictionary.items[i].value.type != kObjectTypeBoolean) { os_errmsg("vim._cs_remote returned an unexpected type for 'should_exit'\n"); os_exit(2); |