summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2012-12-09 14:46:18 +0100
committerAntoine Pitrou <solipsis@pitrou.net>2012-12-09 14:46:18 +0100
commit0ee20ebbff9624017709c35f2fe0a4e163ed9007 (patch)
treed88fb7c16672a0b31b7ca85c9113dfb67ffc08b3
parent2fd0b1a1b95604c74968a10e5fda222655c0b52d (diff)
downloadcpython-git-0ee20ebbff9624017709c35f2fe0a4e163ed9007.tar.gz
Issue #16248: Disable code execution from the user's home directory by tkinter when the -E flag is passed to Python.
Patch by Zachary Ware.
-rw-r--r--Lib/tkinter/__init__.py4
-rw-r--r--Misc/NEWS3
2 files changed, 6 insertions, 1 deletions
diff --git a/Lib/tkinter/__init__.py b/Lib/tkinter/__init__.py
index 0bccbfc1f5..50e51ab209 100644
--- a/Lib/tkinter/__init__.py
+++ b/Lib/tkinter/__init__.py
@@ -1632,7 +1632,9 @@ class Tk(Misc, Wm):
self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
if useTk:
self._loadtk()
- self.readprofile(baseName, className)
+ if not sys.flags.ignore_environment:
+ # Issue #16248: Honor the -E flag to avoid code injection.
+ self.readprofile(baseName, className)
def loadtk(self):
if not self._tkloaded:
self.tk.loadtk()
diff --git a/Misc/NEWS b/Misc/NEWS
index 77e2ddaf75..0b5fab4ef1 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -13,6 +13,9 @@ Core and Builtins
Library
-------
+- Issue #16248: Disable code execution from the user's home directory by tkinter
+ when the -E flag is passed to Python.
+
What's New in Python 3.1.5?
===========================