[Python-checkins] bpo-33656: Move pyshell ctypes import inside try block. (GH-9858)

Terry Jan Reedy webhook-mailer at python.org
Sat Oct 13 20:00:39 EDT 2018


https://github.com/python/cpython/commit/d274afb5e579a5d9d990f68f9af856cf4c918779
commit: d274afb5e579a5d9d990f68f9af856cf4c918779
branch: master
author: Terry Jan Reedy <tjreedy at udel.edu>
committer: GitHub <noreply at github.com>
date: 2018-10-13T20:00:31-04:00
summary:

bpo-33656: Move pyshell ctypes import inside try block. (GH-9858)

A Windows build with _tkinter, tkinter, and idlelib
but without ctypes is unlikely but apparently possible.

files:
M Lib/idlelib/pyshell.py

diff --git a/Lib/idlelib/pyshell.py b/Lib/idlelib/pyshell.py
index 5458c59dbd7e..47eef4399ce6 100755
--- a/Lib/idlelib/pyshell.py
+++ b/Lib/idlelib/pyshell.py
@@ -12,11 +12,11 @@
 # Valid arguments for the ...Awareness call below are defined in the following.
 # https://msdn.microsoft.com/en-us/library/windows/desktop/dn280512(v=vs.85).aspx
 if sys.platform == 'win32':
-    import ctypes
-    PROCESS_SYSTEM_DPI_AWARE = 1
     try:
+        import ctypes
+        PROCESS_SYSTEM_DPI_AWARE = 1
         ctypes.OleDLL('shcore').SetProcessDpiAwareness(PROCESS_SYSTEM_DPI_AWARE)
-    except (AttributeError, OSError):
+    except (ImportError, AttributeError, OSError):
         pass
 
 import tkinter.messagebox as tkMessageBox



More information about the Python-checkins mailing list