From c8eb238f31972aa121ba65ac1be6548500cbb7fe Mon Sep 17 00:00:00 2001 From: "Nicholas J. Kain" Date: Sat, 24 Apr 2021 20:50:08 -0400 Subject: [PATCH] ifchd-parse: Simplify leftover-buffer copying. --- src/ifchd-parse.rl | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/ifchd-parse.rl b/src/ifchd-parse.rl index 5f9f3bd..e38abcb 100644 --- a/src/ifchd-parse.rl +++ b/src/ifchd-parse.rl @@ -208,9 +208,8 @@ int execute_buffer(const char newbuf[static 1]) return -99; } - size_t init_siz = strlen(buf); const char *p = buf; - const char *pe = p + init_siz; + const char *pe = p + strlen(buf); const char *arg_start = p; size_t arg_len = 0; int cs = 0; @@ -218,11 +217,8 @@ int execute_buffer(const char newbuf[static 1]) %% write init; %% write exec; - ptrdiff_t blt = pe - p; - size_t bytes_left = blt >= 0 ? (size_t)blt : 0; - if (bytes_left > 0) { - size_t taken = init_siz - bytes_left; - ssize_t ilen = snprintf(cl.ibuf, sizeof cl.ibuf, "%s", buf + taken); + if (p != pe) { + ssize_t ilen = snprintf(cl.ibuf, sizeof cl.ibuf, "%s", p); if (ilen < 0) { log_line("%s: (%s) snprintf2 failed; your system is broken?", client_config.interface, __func__);