33 lines
929 B
Diff
33 lines
929 B
Diff
From 332262ec91f85cd4224816d2803d818015239007 Mon Sep 17 00:00:00 2001
|
|
From: Quentin Armitage <quentin@armitage.org.uk>
|
|
Date: Wed, 29 Jun 2022 09:18:15 +0100
|
|
Subject: [PATCH] parser: optimise fixing recalculating updated line length
|
|
|
|
Commit 1ffad9a - "recalculate buffer length inside recheck loop"
|
|
resolved the issue but calls strlen(buf) more often than necessary.
|
|
|
|
This commit only calls strlen(buf) when the line buffer is modified.
|
|
|
|
Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
|
|
---
|
|
lib/parser.c | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/lib/parser.c b/lib/parser.c
|
|
index bcabd07f..2146f38b 100644
|
|
--- a/lib/parser.c
|
|
+++ b/lib/parser.c
|
|
@@ -2809,6 +2809,9 @@ read_line(char *buf, size_t size)
|
|
recheck = true;
|
|
if (strchr(buf, '$'))
|
|
recheck = true;
|
|
+
|
|
+ if (recheck)
|
|
+ len = strlen(buf);
|
|
}
|
|
} while (recheck);
|
|
} while (buf[0] == '\0' || check_include(buf));
|
|
--
|
|
2.38.1
|
|
|