aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/os/pty_process_win.c
diff options
context:
space:
mode:
authorerw7 <erw7.github@gmail.com>2019-10-16 16:23:07 +0200
committerJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-03-30 21:55:50 -0400
commit36caafeb281bf872f11d475e594eb212636daa4d (patch)
tree11a0922ed39166ab9fa54249d03fd8d6244a78ce /src/nvim/os/pty_process_win.c
parent4c76b1e981f072229944a22e5d5ee76fe42d994a (diff)
downloadrneovim-36caafeb281bf872f11d475e594eb212636daa4d.tar.gz
rneovim-36caafeb281bf872f11d475e594eb212636daa4d.tar.bz2
rneovim-36caafeb281bf872f11d475e594eb212636daa4d.zip
Change QUEUE_FOREACH macro to use while instead of for
Diffstat (limited to 'src/nvim/os/pty_process_win.c')
-rw-r--r--src/nvim/os/pty_process_win.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/nvim/os/pty_process_win.c b/src/nvim/os/pty_process_win.c
index 52d2f84ace..502b7ffa53 100644
--- a/src/nvim/os/pty_process_win.c
+++ b/src/nvim/os/pty_process_win.c
@@ -343,19 +343,17 @@ static int build_cmd_line(char **argv, wchar_t **cmd_line, bool is_cmdexe)
utf8_cmd_line_len += argc;
char *utf8_cmd_line = xmalloc(utf8_cmd_line_len);
*utf8_cmd_line = NUL;
- while (1) {
- QUEUE *head = QUEUE_HEAD(&args_q);
- QUEUE_REMOVE(head);
- ArgNode *arg_node = QUEUE_DATA(head, ArgNode, node);
+ QUEUE *q;
+ QUEUE_FOREACH(q, &args_q, {
+ ArgNode *arg_node = QUEUE_DATA(q, ArgNode, node);
xstrlcat(utf8_cmd_line, arg_node->arg, utf8_cmd_line_len);
xfree(arg_node->arg);
xfree(arg_node);
- if (QUEUE_EMPTY(&args_q)) {
- break;
- } else {
+ QUEUE_REMOVE(q);
+ if (!QUEUE_EMPTY(&args_q)) {
xstrlcat(utf8_cmd_line, " ", utf8_cmd_line_len);
}
- }
+ })
int result = utf8_to_utf16(utf8_cmd_line, -1, cmd_line);
xfree(utf8_cmd_line);