diff --git a/src/PIL/_tkinter_finder.py b/src/PIL/_tkinter_finder.py index ba4d045e681..5253f075956 100644 --- a/src/PIL/_tkinter_finder.py +++ b/src/PIL/_tkinter_finder.py @@ -5,10 +5,15 @@ import warnings from tkinter import _tkinter as tk -if hasattr(sys, "pypy_find_executable"): - TKINTER_LIB = tk.tklib_cffi.__file__ -else: - TKINTER_LIB = tk.__file__ +try: + if hasattr(sys, "pypy_find_executable"): + TKINTER_LIB = tk.tklib_cffi.__file__ + else: + TKINTER_LIB = tk.__file__ +except AttributeError: + # _tkinter may be compiled directly into Python, in which case __file__ is + # not available. load_tkinter_funcs will check the binary first in any case. + TKINTER_LIB = None tk_version = str(tkinter.TkVersion) if tk_version == "8.4":