getsentry / getsentry/sentry-python

match_regex_list raises IndexError when a pattern list contains an empty string

Ouverte
#6,504 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Bug Python
Langage dominant
Python
Étoiles
2.2k
Forks
669
Merge moyen
1 j 1 h
PR mergées (30 j)
213

Description

`sentry_sdk.utils.match_regex_list` iterates a user-supplied list of patterns and, with the default `substring_matching=False`, checks `item_matcher[-1] != "$"`. If any element is the empty string, `""[-1]` raises `IndexError: string index out of range`.

```python
from sentry_sdk.utils import match_regex_list
match_regex_list("anything", [""])
```

This is reachable from the Celery integration (`CeleryIntegration.exclude_beat_tasks` is passed to `match_regex_list` with the default mode), so an empty string in that user-configured list crashes instead of being handled.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.