legacy_tracing.c: Unchecked PyLong_AsInt in tracing callbacks
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 77.2k
- Forks
- 35.9k
- Métriques de merge des PR
- Métriques de PR en attente
Description
Bug report
Bug description:
Original gist: https://gist.github.com/devdanzin/d1a6ab9f62970be0cae139366ce3c482
Summary
sys_trace_jump_func(line 382-384) andsys_trace_line_func(line 355):PyLong_AsInterror return -1 not checked. Proceeds with wrong values and pending exception.Fix
Add
if (result == -1 && PyErr_Occurred()) return NULL;checks.
CPython versions tested on:
CPython main branch
Operating systems tested on:
No response
Linked PRs
- gh-153623
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Lisez legacy_tracing.c au niveau de sys_trace_line_func et sys_trace_jump_func, en vous concentrant sur les appels à PyLong_AsInt signalés aux lignes 355 et 382-384. Vérifiez que les deux callbacks gèrent les erreurs de conversion sans continuer avec des valeurs invalides ni avec une exception en attente. L’issue est déjà liée à la PR gh-153623 ; examinez donc ce travail avant de commencer.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- c
- Domaine
- backend
- Type d'issue
- Bug
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- À l'abandon
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 25/100