[PATCH] nc_bloaty: Code shrink in findline, use memchr instead.
Martin Lewis
martin.lewis.x84 at gmail.com
Mon Feb 3 23:52:05 UTC 2020
Signed-off-by: Martin Lewis <martin.lewis.x84 at gmail.com>
---
networking/nc_bloaty.c | 21 ++++-----------------
1 file changed, 4 insertions(+), 17 deletions(-)
diff --git a/networking/nc_bloaty.c b/networking/nc_bloaty.c
index 034e03d21..190a8bcb1 100644
--- a/networking/nc_bloaty.c
+++ b/networking/nc_bloaty.c
@@ -237,24 +237,11 @@ static void arm(unsigned secs)
Not distinguishing \n vs \r\n for the nonce; it just works as is... */
static unsigned findline(char *buf, unsigned siz)
{
- char * p;
- int x;
- if (!buf) /* various sanity checks... */
- return 0;
- if (siz > BIGSIZ)
+ char *p;
+ if (!buf || siz > BIGSIZ)
return 0;
- x = siz;
- for (p = buf; x > 0; x--) {
- if (*p == '\n') {
- x = (int) (p - buf);
- x++; /* 'sokay if it points just past the end! */
-Debug("findline returning %d", x);
- return x;
- }
- p++;
- } /* for */
-Debug("findline returning whole thing: %d", siz);
- return siz;
+ p = memchr(buf, '\n', siz);
+ return p ? (p - buf + 1) : siz;
} /* findline */
/* doexec:
--
2.11.0
More information about the busybox
mailing list