python / python/cpython

legacy_tracing.c: Unchecked PyLong_AsInt in tracing callbacks

Ouverte
#153,622 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

interpreter-core type-bug
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) and sys_trace_line_func (line 355): PyLong_AsInt error 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

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. 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

Recevez les nouvelles issues par e-mail

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