tests/run-tests.py
changeset 11781 6f59154fb604
parent 11741 431e2bf37ae7
child 12316 4134686b83e1
--- a/tests/run-tests.py	Wed Aug 11 12:30:18 2010 +0200
+++ b/tests/run-tests.py	Thu Aug 12 14:53:34 2010 +0900
@@ -499,6 +499,13 @@
     finally:
         os.remove(name)
 
+    def rematch(el, l):
+        try:
+            return re.match(el, l)
+        except re.error:
+            # el is an invalid regex
+            return False
+
     pos = -1
     postout = []
     for n, l in enumerate(output):
@@ -513,7 +520,7 @@
 
             if el == l: # perfect match (fast)
                 postout.append("  " + l)
-            elif el and re.match(el, l): # fallback regex match
+            elif el and rematch(el, l): # fallback regex match
                 postout.append("  " + el)
             else: # mismatch - let diff deal with it
                 postout.append("  " + l)