github / github/codeql

LGTM.com - false positive - illegal raise of NoneType

未关闭
#6,573 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
acknowledged false-positive not security Python
主要语言
CodeQL
星标
10.1k
派生
2.1k
平均合并
2 天 15 小时
30 天内合并 PR
141

描述

**Description of the false positive**

```python
if not available_handlers:
[...]
raise RuntimeError(...)

last_exception = None
for handler in available_handlers:
try:
[...]
return
except Exception as exc:
[...]
last_exception = exc
[...]
raise last_exception # type: ignore[misc]
```
LGTM complains that `last_exception` can be `None`:
> Illegal class 'NoneType' raised; will result in a TypeError being raised instead.

This can happen only if the list `available_handlers` the loop iterates over is empty. We make sure `available_handlers` is **not** empty just before the loop.

**URL to the alert on the project page on LGTM.com**

https://lgtm.com/projects/g/pydicom/pydicom/snapshot/283a1a1994d3d01b4d1e1fb3959c4de35c3240a8/files/pydicom/dataset.py?sort=name&dir=ASC&mode=heatmap#xe8b0c26a5a33f9bc:1

https://lgtm.com/projects/g/pydicom/pydicom/snapshot/283a1a1994d3d01b4d1e1fb3959c4de35c3240a8/files/pydicom/dataset.py?sort=name&dir=ASC&mode=heatmap#x945aebd0a835900:1

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。