summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoémi Ványi <kvch@users.noreply.github.com>2019-10-24 10:33:30 +0200
committerGitHub <noreply@github.com>2019-10-24 10:33:30 +0200
commit147ad504c340727b77b1e23568a29c1daef0df8b (patch)
tree66af9162fcc328e85565309fd8cd187ab239e289
parent12f42d1572311a56401637ac5c7dc66008eb979c (diff)
parentdede46a2d5ad1504991b05b8edab4d1ffd781f46 (diff)
downloadsearxng-147ad504c340727b77b1e23568a29c1daef0df8b.tar.gz
searxng-147ad504c340727b77b1e23568a29c1daef0df8b.zip
Merge pull request #1729 from MarcAbonce/fix_tracker_remover
Fix out of range error in tracker remover plugin
-rw-r--r--searx/plugins/tracker_url_remover.py12
1 files changed, 5 insertions, 7 deletions
diff --git a/searx/plugins/tracker_url_remover.py b/searx/plugins/tracker_url_remover.py
index 9e18867b9..33dd621e1 100644
--- a/searx/plugins/tracker_url_remover.py
+++ b/searx/plugins/tracker_url_remover.py
@@ -39,16 +39,14 @@ def on_result(request, search, result):
return True
parsed_query = parse_qsl(query)
- changed = False
+ changes = 0
for i, (param_name, _) in enumerate(list(parsed_query)):
for reg in regexes:
if reg.match(param_name):
- parsed_query.pop(i)
- changed = True
+ parsed_query.pop(i - changes)
+ changes += 1
+ result['parsed_url'] = result['parsed_url']._replace(query=urlencode(parsed_query))
+ result['url'] = urlunparse(result['parsed_url'])
break
- if changed:
- result['parsed_url'] = result['parsed_url']._replace(query=urlencode(parsed_query))
- result['url'] = urlunparse(result['parsed_url'])
-
return True