From 6d41b27f534a97c116c30701485595a574df24f0 Mon Sep 17 00:00:00 2001 From: Thomas Roth Date: Wed, 24 Feb 2010 23:59:54 +0100 Subject: Fixes crash on illegal regular expression for interception. --- libmproxy/filt.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'libmproxy') diff --git a/libmproxy/filt.py b/libmproxy/filt.py index 49fff6c7..1dba3153 100644 --- a/libmproxy/filt.py +++ b/libmproxy/filt.py @@ -73,8 +73,10 @@ class FResp(_Action): class _Rex(_Action): def __init__(self, expr): self.expr = expr - self.re = re.compile(self.expr) - + try: + self.re = re.compile(self.expr) + except: + self.re = False def _check_content_type(expr, o): val = o.headers.get("content-type") @@ -186,7 +188,11 @@ class FUrl(_Rex): def make(klass, s, loc, toks): if len(toks) > 1: toks = toks[1:] - return klass(*toks) + ret_klass = klass(*toks) + if ret_klass.re: + return ret_klass + else: + return False def __call__(self, o): if o.is_response(): -- cgit v1.2.3