[Python-checkins] cpython (2.7): Issue #24745: Prevent IDLE initialization crash with Tk 8.4; patch by Ned Deily.
terry.reedy
python-checkins at python.org
Fri Sep 4 10:39:57 CEST 2015
https://hg.python.org/cpython/rev/34a8078f6249
changeset: 97663:34a8078f6249
branch: 2.7
parent: 97655:252d4760f28b
user: Terry Jan Reedy <tjreedy at udel.edu>
date: Fri Sep 04 04:37:02 2015 -0400
summary:
Issue #24745: Prevent IDLE initialization crash with Tk 8.4; patch by Ned Deily.
files:
Lib/idlelib/configHandler.py | 18 +++++++++++-------
1 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/Lib/idlelib/configHandler.py b/Lib/idlelib/configHandler.py
--- a/Lib/idlelib/configHandler.py
+++ b/Lib/idlelib/configHandler.py
@@ -23,6 +23,7 @@
import sys
from ConfigParser import ConfigParser
+from Tkinter import TkVersion
from tkFont import Font, nametofont
class InvalidConfigType(Exception): pass
@@ -689,13 +690,16 @@
bold = self.GetOption(configType, section, 'font-bold', default=0,
type='bool')
if (family == 'TkFixedFont'):
- f = Font(name='TkFixedFont', exists=True, root=root)
- actualFont = Font.actual(f)
- family = actualFont['family']
- size = actualFont['size']
- if size < 0:
- size = 10 # if font in pixels, ignore actual size
- bold = actualFont['weight']=='bold'
+ if TkVersion < 8.5:
+ family = 'Courier'
+ else:
+ f = Font(name='TkFixedFont', exists=True, root=root)
+ actualFont = Font.actual(f)
+ family = actualFont['family']
+ size = actualFont['size']
+ if size < 0:
+ size = 10 # if font in pixels, ignore actual size
+ bold = actualFont['weight']=='bold'
return (family, size, 'bold' if bold else 'normal')
def LoadCfgFiles(self):
--
Repository URL: https://hg.python.org/cpython
More information about the Python-checkins
mailing list