summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/idlelib/EditorWindow.py6
-rw-r--r--Misc/NEWS3
2 files changed, 7 insertions, 2 deletions
diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py
index 7b7eb39..938a656 100644
--- a/Lib/idlelib/EditorWindow.py
+++ b/Lib/idlelib/EditorWindow.py
@@ -772,7 +772,8 @@ class EditorWindow(object):
"Load and update the recent files list and menus"
rf_list = []
if os.path.exists(self.recent_files_path):
- rf_list_file = open(self.recent_files_path,'r')
+ rf_list_file = open(self.recent_files_path,'r',
+ encoding='utf_8', errors='replace')
try:
rf_list = rf_list_file.readlines()
finally:
@@ -790,7 +791,8 @@ class EditorWindow(object):
rf_list = [path for path in rf_list if path not in bad_paths]
ulchars = "1234567890ABCDEFGHIJK"
rf_list = rf_list[0:len(ulchars)]
- rf_file = open(self.recent_files_path, 'w')
+ rf_file = open(self.recent_files_path, 'w',
+ encoding='utf_8', errors='replace')
try:
rf_file.writelines(rf_list)
finally:
diff --git a/Misc/NEWS b/Misc/NEWS
index b6b953e..07f493a 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -16,6 +16,9 @@ Core and Builtins
Library
-------
+- Issue #10974: IDLE no longer crashes if its recent files list includes files
+ with non-ASCII characters in their path names.
+
- Have hashlib.algorithms_available and hashlib.algorithms_guaranteed both
return sets instead of one returning a tuple and the other a frozenset.