svn commit: r1936130 - httpd/httpd/trunk/test/pyhttpd

[email protected] Tue, 14 Jul 2026 09:25:34 -0000
Newsgroups gmane.comp.apache.cvs
Message-ID <178402113496.237069.1105172918755285387@svn03-he-fi>
Author: jorton
Date: Tue Jul 14 09:25:34 2026
New Revision: 1936130

Log:
* test/pyhttpd/log.py (HttpdErrorLog): Add regex patterns to detect
  crash and sanitizer error messages in error log, and treat matching
  lines as errors during log checking.

Assisted-by: Claude Opus 4.6 <[email protected]>

GitHub: closes #684

Modified:
   httpd/httpd/trunk/test/pyhttpd/log.py

Modified: httpd/httpd/trunk/test/pyhttpd/log.py
==============================================================================
--- httpd/httpd/trunk/test/pyhttpd/log.py	Tue Jul 14 09:01:43 2026	(r1936129)
+++ httpd/httpd/trunk/test/pyhttpd/log.py	Tue Jul 14 09:25:34 2026	(r1936130)
@@ -13,6 +13,8 @@ class HttpdErrorLog:
 
     RE_ERRLOG_WARN = re.compile(r'.*\[[^:]+:warn].*')
     RE_ERRLOG_ERROR = re.compile(r'.*\[[^:]+:error].*')
+    RE_ERRLOG_CRASH = re.compile(r'.*\bexit signal (?:Segmentation fault|Abort(ed)?|Bus error)\b.*')
+    RE_ERRLOG_ASAN = re.compile(r'.*==\d+==ERROR: (?:Address|Memory|Leak|Thread)Sanitizer:.*')
     RE_APLOGNO = re.compile(r'.*\[[^:]+:(error|warn)].* (?P<aplogno>AH\d+): .+')
 
     def __init__(self, path: str):
@@ -126,6 +128,10 @@ class HttpdErrorLog:
                         continue
                     if line in self._caught_matches:
                         continue
+                    if self.RE_ERRLOG_CRASH.match(line) or \
+                            self.RE_ERRLOG_ASAN.match(line):
+                        errors.append(line)
+                        continue
                     m = self.RE_ERRLOG_WARN.match(line)
                     if m and line not in self._caught_warnings:
                         warnings.append(line)