legacy_tracing.c: Unchecked PyLong_AsInt in tracing callbacks
まだ誰も着手していません。
評価
調査の方向性
legacy_tracing.c の sys_trace_line_func と sys_trace_jump_func を読み、355 行目および 382-384 行目で指摘されている PyLong_AsInt 呼び出しに焦点を当ててください。両方のコールバックが、無効な値を使って処理を続行したり、保留中の例外を残したりせずに変換エラーを処理していることを確認してください。Issue はすでに PR gh-153623 に関連付けられているため、始める前にその作業を確認してください。
索引モデルが issue の本文から書いたものです。
説明
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
- 主要言語
- Python
- スター
- 77.2k
- フォーク
- 36k
- 平均マージ
- 1日 9時間
- マージ済み PR(30日)
- 558
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
python/cpython のほかの issue
-
docs pending
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
stdlib type-feature
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
stdlib type-feature
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
build type-bug
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
stdlib topic-email type-feature
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100