| Index: abp/filters/parser.py |
| =================================================================== |
| --- a/abp/filters/parser.py |
| +++ b/abp/filters/parser.py |
| @@ -100,6 +100,7 @@ |
| COLLAPSE = 'collapse' |
| SITEKEY = 'sitekey' |
| DONOTTRACK = 'donottrack' |
| + CSP = 'csp' |
| def _line_type(name, field_names, format_string): |
| @@ -145,7 +146,7 @@ |
| HEADER_REGEXP = re.compile(r'\[(Adblock(?:\s*Plus\s*[\d\.]+?)?)\]', flags=re.I) |
| HIDING_FILTER_REGEXP = re.compile(r'^([^/*|@"!]*?)#([@?])?#(.+)$') |
| FILTER_OPTIONS_REGEXP = re.compile( |
| - r'\$(~?[\w-]+(?:=[^,\s]+)?(?:,~?[\w-]+(?:=[^,\s]+)?)*)$' |
| + r'\$(~?[\w-]+(?:=[^,]+)?(?:,~?[\w-]+(?:=[^,]+)?)*)$' |
| ) |
| @@ -171,6 +172,8 @@ |
| def _parse_option(option): |
| + if option.startswith('~csp'): |
| + return 'csp', False |
| if '=' in option: |
| return option.split('=', 1) |
| if option.startswith('~'): |