Skip to content

[3.15] gh-55646: Do not crash IDLE on an invalid key binding (GH-152747) - #158149

Merged
hugovk merged 1 commit into
python:3.15from
miss-islington:backport-b954645-3.15
Sep 28, 2026
Merged

hugovk merged 1 commit into
python:3.15from
miss-islington:backport-b954645-3.15

Conversation

@miss-islington

@miss-islington miss-islington commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

A typo in a key binding, such as for , crashed IDLE
at startup. It is now ignored with a warning.

On macOS an invalid binding such as is not parsed into a
MultiCall triplet, so it falls back to Tk's event_add(), which was left
unguarded and still crashed. Guard the fallback too, and test both the
parsed (bind()) and unparsed (event_add()) paths on every platform.


(cherry picked from commit b954645)

Co-authored-by: Serhiy Storchaka storchaka@gmail.com
Co-authored-by: Terry Jan Reedy tjreedy@udel.edu
Co-authored-by: Claude Opus 4.8 noreply@anthropic.com

…-152747)

A typo in a key binding, such as <Alt-Key-up> for <Alt-Key-Up>, crashed IDLE
at startup.  It is now ignored with a warning.

On macOS an invalid binding such as <Alt-Key-up> is not parsed into a
MultiCall triplet, so it falls back to Tk's event_add(), which was left
unguarded and still crashed.  Guard the fallback too, and test both the
parsed (bind()) and unparsed (event_add()) paths on every platform.

---------
(cherry picked from commit b954645)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
@hugovk
hugovk merged commit 58214d2 into python:3.15 Sep 28, 2026
60 checks passed
@miss-islington
miss-islington deleted the backport-b954645-3.15 branch September 28, 2026 15:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants