`ImageDraw.arc()` segfaults on a tuple subclass whose `__len__` is too large
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 58/100
Direzione di ricerca
Start by tracing ImageDraw.arc() from its Python entry point into the coordinate handling used for tuple subclasses; compare that path with the list subclass behavior described in the report. Reproduce with the supplied MyTuple example under Python 3.13.5. Done means the tuple input raises a safe exception instead of crashing the interpreter.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
Passing coordinates as a tuple subclass whose __len__ reports more items than the tuple holds crashes the interpreter.
The same input as a list subclass raises a clean IndexError: list index out of range, so only the tuple path is affected.
Environment
- Pillow 13.0.0
- Python 3.13.5
Reproducer
from PIL import Image, ImageDraw
class MyTuple(tuple):
def __len__(self):
return 10
ImageDraw.Draw(Image.new("RGB", (50, 50))).arc(MyTuple((0.0,)), 0, 90)
Segmentation fault (core dumped)
- Lingua principale
- Python
- Stelle
- 13.9k
- Fork
- 2.6k
- Merge medio
- 1g 4h
- PR unite (30g)
- 173
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di python-pillow/Pillow
-
Warn that pre-applying arabic_reshaper + python-bidi corrupts text on a Raqm buildForse già presa @Syamjith-NK l’ha presa 62 giorni fa. ApertaDocumentation Font Rendering PNG Third Party Framework
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
python-pillow/Pillow#9907 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Image.putpixel incorrectly labels supported arguments in type annotationsForse già presa @radarhere l’ha presa 190 giorni fa. ApertaPNG
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
python-pillow/Pillow#9584 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
JPEG saved with keep_rgb=True and dpi reopens with incorrect colorsForse già presa @Muguett-DBY l’ha presa 2 giorni fa. Aperta🤖-assisted JPEG
Difficoltà 4/5 1-2 giorni Idoneità per principianti 25/100
python-pillow/Pillow#10344 ·
I maintainer di solito rispondono entro 1 giorno
-
JPEG dpi read from EXIF uses XResolution for both axesForse già presa @unvisible789 l’ha presa 3 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 20/100
python-pillow/Pillow#10331 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
16-bit PNG tRNS key: convert("RGBA") misses the keyed pixel and makes another transparentForse già presa Una pull request collegata a questa issue è aperta o già unita. ApertaConversion
Difficoltà 3/5 1-2 giorni Idoneità per principianti 58/100
python-pillow/Pillow#10330 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di python-pillow/Pillow
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
-
Validate finite output clamping limits in StepPredictor.prepare_clamping_params to prevent silent NaN/Inf propagationForse già presa @muskan-creates352 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
mllam/neural-lam#848 ·
I maintainer di solito rispondono entro 2 giorni
-
infra
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
fab-geocommuns/RNB-coeur#1166 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
deepspeedai/DeepSpeed#8951 ·
I maintainer di solito rispondono entro 2 giorni