[Intel-wired-lan] [PATCH 15/38] docs: kdoc_re: properly handle strings and escape chars on it
Mauro Carvalho Chehab
mchehab+huawei at kernel.org
Wed Feb 18 10:12:45 UTC 2026
The logic inside NestedMatch currently doesn't consider that
function arguments may have chars and strings, which may
eventually contain delimiters.
Add logic to handle strings and escape characters on them.
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei at kernel.org>
Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov at intel.com>
---
tools/lib/python/kdoc/kdoc_re.py | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/tools/lib/python/kdoc/kdoc_re.py b/tools/lib/python/kdoc/kdoc_re.py
index 6c44fcce0415..420cb8879ba3 100644
--- a/tools/lib/python/kdoc/kdoc_re.py
+++ b/tools/lib/python/kdoc/kdoc_re.py
@@ -195,6 +195,8 @@ class NestedMatch:
for match_re in regex.finditer(line):
start = match_re.start()
offset = match_re.end()
+ string_char = None
+ escape = False
d = line[offset - 1]
if d not in self.DELIMITER_PAIRS:
@@ -208,6 +210,22 @@ class NestedMatch:
d = line[pos]
+ if escape:
+ escape = False
+ continue
+
+ if string_char:
+ if d == '\\':
+ escape = True
+ elif d == string_char:
+ string_char = None
+
+ continue
+
+ if d in ('"', "'"):
+ string_char = d
+ continue
+
if d in self.DELIMITER_PAIRS:
end = self.DELIMITER_PAIRS[d]
--
2.52.0
More information about the Intel-wired-lan
mailing list